利用百度地图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获取当前位置信息的实例相关推荐

  1. HTML5页面调用百度地图API,获取当前位置并导航到目的地

    微信也可用, <!DOCTYPE html> <html lang="zh-cmn-Hans"><meta charset="UTF-8&q ...

  2. Python3 | 通过百度地图API获取商家详细信息(包括店名,地址,经纬度,电话)

    一.打开百度地图开放平台,选择Web服务API . ​​​​​​官方文档对API接口的调用描述的比较详细,在调用之前先要申请百度地图的账号,然后申请密钥,获取密钥的步骤官方也有说明. 二.通过百度地图 ...

  3. html调用腾讯地图定位当前位置,vue web项目中调用腾讯地图API获取当前位置的经纬度...

    vue web项目中调用腾讯地图API获取当前位置的经纬度 vue web项目中调用腾讯地图API获取当前位置的经纬度 在main.js 中添加一下代码 import axios from 'axio ...

  4. 利用高德地图API获取任意两座城市之间的距离!异地也有惊喜!

    工作中有时会遇到这样一种场景:年末需要统计所有员工该年的航旅出差情况,然后根据他们的飞行距离补贴一定的交通费.例如如下所示情况: 然而,如果我们使用地图APP等工具逐一进行手工查询,在一家规模稍大的公 ...

  5. java获取经纬度_java调用高德地图api获取某个位置的经纬度

    java调用高德地图api获取经纬度的方法,废话少说,直接上代码: import com.fasterxml.jackson.databind.JsonNode; import com.ning.ht ...

  6. JavaScript使用百度地图API获取当前位置信息

    使用步骤: 一.百度开放API平台申请AK 二.在线引入API 或者使用 npm 三.使用API获取位置 注意:百度API. 高德API 商业用途,均需授权 引用与配置 方式一 .在线引入API: & ...

  7. 百度地图API获取当前位置

    异步加载获取当前位置 //百度地图API功能function loadJScript() {var script = document.createElement("script" ...

  8. 高德地图API获取当前位置对应的周边信息

    一.前言 当前公司开发计划做一个打卡功能,获取用户信息地理信息后,提供列表给客户选择打卡地点(200米范围内).自己今天对三家地图开放者平台文档进行了查看比较(腾讯.百度.高德),目前实现的方法采用的 ...

  9. pc端使用高德地图api获取当前位置的经纬度

    <!DOCTYPE html> <html><head><meta charset="utf-8"><meta name=&q ...

最新文章

  1. [转]LIB和DLL的区别与使用
  2. qt 中 设置 背景的方法
  3. 游戏设计、原型与开发:基于Unity与C#从构思到实现pdf
  4. 百万数据报表导出:原理分析与总结
  5. python注释_python中的单行注释、多行注释
  6. Codeforces Round #599 (Div. 2) E. Sum Balance 图转换 + 子集dp + 环
  7. adb logcat 基本用法
  8. Mybatis一级缓存、整合第三方缓存ehcache、Mybatis二级缓存
  9. Android 自动化测试框架简介
  10. Selenium免密码登录学习的方法
  11. 用Java开发手机Andriod系统Apk软件
  12. 通达信炒股软件测试简历,专家看盘(通达信公式 副图 源码 测试图)
  13. tracert、traceroute、mtr、WinMTR
  14. Git-LFS:大文件也有了版本管理
  15. 英文科技论文写作与学术报告Lecture1习题答案
  16. DongDong认亲戚 来源:牛客网
  17. LaTeX制作幻灯片
  18. 局域网怎么添加新的计算机用户,如何添加局域网
  19. leetcode 306 累加数(js)
  20. Emscripten 单词_这300个单词务必让孩子在三年级前搞定

热门文章

  1. 递归的使用不当 导致 压缩文件不能压缩二级目录
  2. 【clickhose】clickhouse-client 无法登录 could not determine local time zone custom time zone file used
  3. 95-30-010-Channel-AbstractChannel
  4. 【Flink】Flink 1.9 本地运行无法访问界面 {“errors“:[“Not found.“]}
  5. navicat安装指南
  6. 大数据面试-02-大数据工程师面试题
  7. spark学习-40-Spark的UnifiedMemoryManager
  8. 【flume】flume读取web应用某个文件夹下日志到hdfs
  9. Java类加载过程梳理,一篇搞定
  10. MySQL定时备份数据库方案(全库备份)