百度地图利用位置提供服务器,利用百度地图API获取当前位置信息的实例
利用百度地图API可以做很多事情,个人感觉最核心也是最基础的就是定位功能了。这里分享一个制作的JS可以实现登录网页后定位:
var map;
var gpsPoint;
var baiduPoint;
var gpsAddress;
var baiduAddress;
var x;
var y;
function getLocation() {
//根据IP获取城市
var myCity = new BMap.LocalCity();
myCity.get(getCityByIP);
//获取GPS坐标
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showMap, handleError, { enableHighAccuracy: true, maximumAge: 1000 });
} else {
alert("您的浏览器不支持使用HTML 5来获取地理位置服务");
}
}
function showMap(value) {
var longitude = value.coords.longitude;
var latitude = value.coords.latitude;
map = new BMap.Map("map");
x=latitude;
y=longitude;
//alert("坐标经度为:" + latitude + ", 纬度为:" + longitude );
gpsPoint = new BMap.Point(longitude, latitude); // 创建点坐标
//根据坐标逆解析地址
var geoc = new BMap.Geocoder();
geoc.getLocation(gpsPoint, getCityByCoordinate);
BMap.Convertor.translate(gpsPoint, 0, translateCallback);
map.enableScrollWheelZoom(true);
}
translateCallback = function (point) {
baiduPoint = point;
map.centerAndZoom(baiduPoint, 18);
var geoc = new BMap.Geocoder();
geoc.getLocation(baiduPoint, getCityByBaiduCoordinate);
}
function getCityByCoordinate(rs) {
gpsAddress = rs.addressComponents;
var address = "GPS标注:" + gpsAddress.province + "," + gpsAddress.city + "," + gpsAddress.district + "," + gpsAddress.street + "," + gpsAddress.streetNumber;
var marker = new BMap.Marker(gpsPoint); // 创建标注
map.addOverlay(marker); // 将标注添加到地图中
var labelgps = new BMap.Label(address, { offset: new BMap.Size(20, -10) });
marker.setLabel(labelgps); //添加GPS标注
}
function getCityByBaiduCoordinate(rs) {
baiduAddress = rs.addressComponents;
var address = "百度标注:" + baiduAddress.province + "," + baiduAddress.city + "," + baiduAddress.district + "," + baiduAddress.street + "," + baiduAddress.streetNumber;
var marker = new BMap.Marker(baiduPoint); // 创建标注
map.addOverlay(marker); // 将标注添加到地图中
var labelbaidu = new BMap.Label(address, { offset: new BMap.Size(20, -10) });
marker.setLabel(labelbaidu); //添加百度标注
}
//根据IP获取城市
function getCityByIP(rs) {
var cityName = rs.name;
alert("根据IP定位您所在的城市为:" + cityName);
}
function handleError(value) {
switch (value.code) {
case 1:
alert("位置服务被拒绝");
break;
case 2:
alert("暂时获取不到位置信息");
break;
case 3:
alert("获取信息超时");
break;
case 4:
alert("未知错误");
break;
}
}
function init() {
getLocation();
}
window.onload = init;
完成定位功能后可以添加相关代码编辑地图控件 覆盖物 信息窗口等等各种功能。
以上这篇利用百度地图API获取当前位置信息的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持找一找教程网。
百度地图利用位置提供服务器,利用百度地图API获取当前位置信息的实例相关推荐
- HTML5页面调用百度地图API,获取当前位置并导航到目的地
微信也可用, <!DOCTYPE html> <html lang="zh-cmn-Hans"><meta charset="UTF-8&q ...
- Python3 | 通过百度地图API获取商家详细信息(包括店名,地址,经纬度,电话)
一.打开百度地图开放平台,选择Web服务API . 官方文档对API接口的调用描述的比较详细,在调用之前先要申请百度地图的账号,然后申请密钥,获取密钥的步骤官方也有说明. 二.通过百度地图 ...
- html调用腾讯地图定位当前位置,vue web项目中调用腾讯地图API获取当前位置的经纬度...
vue web项目中调用腾讯地图API获取当前位置的经纬度 vue web项目中调用腾讯地图API获取当前位置的经纬度 在main.js 中添加一下代码 import axios from 'axio ...
- 利用高德地图API获取任意两座城市之间的距离!异地也有惊喜!
工作中有时会遇到这样一种场景:年末需要统计所有员工该年的航旅出差情况,然后根据他们的飞行距离补贴一定的交通费.例如如下所示情况: 然而,如果我们使用地图APP等工具逐一进行手工查询,在一家规模稍大的公 ...
- java获取经纬度_java调用高德地图api获取某个位置的经纬度
java调用高德地图api获取经纬度的方法,废话少说,直接上代码: import com.fasterxml.jackson.databind.JsonNode; import com.ning.ht ...
- JavaScript使用百度地图API获取当前位置信息
使用步骤: 一.百度开放API平台申请AK 二.在线引入API 或者使用 npm 三.使用API获取位置 注意:百度API. 高德API 商业用途,均需授权 引用与配置 方式一 .在线引入API: & ...
- 百度地图API获取当前位置
异步加载获取当前位置 //百度地图API功能function loadJScript() {var script = document.createElement("script" ...
- 高德地图API获取当前位置对应的周边信息
一.前言 当前公司开发计划做一个打卡功能,获取用户信息地理信息后,提供列表给客户选择打卡地点(200米范围内).自己今天对三家地图开放者平台文档进行了查看比较(腾讯.百度.高德),目前实现的方法采用的 ...
- pc端使用高德地图api获取当前位置的经纬度
<!DOCTYPE html> <html><head><meta charset="utf-8"><meta name=&q ...
最新文章
- [转]LIB和DLL的区别与使用
- qt 中 设置 背景的方法
- 游戏设计、原型与开发:基于Unity与C#从构思到实现pdf
- 百万数据报表导出:原理分析与总结
- python注释_python中的单行注释、多行注释
- Codeforces Round #599 (Div. 2) E. Sum Balance 图转换 + 子集dp + 环
- adb logcat 基本用法
- Mybatis一级缓存、整合第三方缓存ehcache、Mybatis二级缓存
- Android 自动化测试框架简介
- Selenium免密码登录学习的方法
- 用Java开发手机Andriod系统Apk软件
- 通达信炒股软件测试简历,专家看盘(通达信公式 副图 源码 测试图)
- tracert、traceroute、mtr、WinMTR
- Git-LFS:大文件也有了版本管理
- 英文科技论文写作与学术报告Lecture1习题答案
- DongDong认亲戚 来源:牛客网
- LaTeX制作幻灯片
- 局域网怎么添加新的计算机用户,如何添加局域网
- leetcode 306 累加数(js)
- Emscripten 单词_这300个单词务必让孩子在三年级前搞定
热门文章
- 递归的使用不当 导致 压缩文件不能压缩二级目录
- 【clickhose】clickhouse-client 无法登录 could not determine local time zone custom time zone file used
- 95-30-010-Channel-AbstractChannel
- 【Flink】Flink 1.9 本地运行无法访问界面 {“errors“:[“Not found.“]}
- navicat安装指南
- 大数据面试-02-大数据工程师面试题
- spark学习-40-Spark的UnifiedMemoryManager
- 【flume】flume读取web应用某个文件夹下日志到hdfs
- Java类加载过程梳理,一篇搞定
- MySQL定时备份数据库方案(全库备份)