1,H5地理定位

window.navigator.geolocation 是H5新增的地理位置服务,有以下三个API:

1.1 获取当前地理位置(获取位置是属于异步操作,结果在回调函数中)

  • navigator.geolocation.getCurrentPosition()获取当前地理位置,经度、纬度是在第一个回调函数参数的coords字段中获取。longitude是经度,latitude是纬度。如果用户阻止获取位置,会执行第二个回调函数,也就是失败的回调。
 navigator.geolocation.getCurrentPosition(function(result) {// 得到地理定位结果的前提:1,设备支持并开启定位功能 2,用户在网页弹窗授权允许console.log(1, result); //成功的结果h1.innerHTML = `当前位置的信息如下:<br>经度是:${result.coords.longitude}<br>纬度是:${result.coords.latitude}<br>海拔是:${result.coords.altitude}<br>方向是:${result.coords.heading}<br>速度是:${result.coords.speed}<br>`}, function(err) {// 如果用户阻止获取位置,会执行第二个回调函数,也就是失败的回调console.log(2, err); //失败的信息})

如果设备不支持定位或用户关闭了设备的定位功能,则不会调用回调函数

1.2 开启位置监听,跟踪位置变化,相当于计时器,每隔几秒获取一次位置

        var watchID = navigator.geolocation.watchPosition(function(result) {console.log(3, result.coords);h1.innerHTML = `当前位置的信息如下:<br>经度是:${result.coords.longitude}<br>纬度是:${result.coords.latitude}<br>海拔是:${result.coords.altitude}<br>方向是:${result.coords.heading}<br>速度是:${result.coords.speed}<br>`})

1.3 结束位置监视,定制计时器,类似于计时器的停止方式,开启监视时,同步返回值是id

       setTimeout(() => {navigator.geolocation.clearWatch(watchID); //一分钟之后,结束监视}, 60000);

2,百度地图的使用

2.1先设置禁止用户缩放网页

在head标签中含有name="viewport"的meta标签中content字段中听见user-scalable=no值,表示在移动端禁止用户缩放网页,可以缩放地图

 <meta name="viewport" content="width=device-width, initial-scale=1.0 user-scalable=no">

2.2 引入百度地图API文档

    <script type="text/javascript" src="https://api.map.baidu.com/api?v=3.0&ak=你的密钥"></script>
  • 上边的密钥需要到百度地图开发平台注册并且申请为个人开发者才拥有的密钥

2.3 创建百度地图的容器

         <div id="container"></div>

2.4 创建地图实例对象

        var map = new BMap.Map("container");

注意:方法里边放的是容器,如果API版本不一样实例对象就不一样,我这里引入的是3.0版本

2.5 设置中心点坐标

       var point = new BMap.Point(112.5285, 32.9907);

2.6 初始化地图,设置地图中心点和缩放级别

级别越小,地图越小

        map.centerAndZoom(point, 15);

2.7 开启鼠标滚轮缩放

        map.enableScrollWheelZoom(true);

2.8 绑定地图的点击事件

        map.addEventListener("click", function(e){// 拿到点击地图上这一点的经纬度// alert(e.point.lng + ", " + e.point.lat);// 让地图中心平滑移动到点击的点  map.panTo(new BMap.Point(e.point.lng, e.point.lat)); })

2.9 逆地址解析

逆地址解析:根据经度和纬度解析为汉字

// 创建地理编码实例, 并配置参数获取乡镇级数据   var myGeo = new BMap.Geocoder({extensions_town: true});// 根据坐标得到地址描述    myGeo.getLocation(center, function(result) {if (result) {console.log(result.address);}});

H5地理定位、百度地图使用相关推荐

  1. android 百度地图h5,【分享】H5 地理信息定位+百度地图

    [JavaScript] 纯文本查看 复制代码 //创建和初始化地图函数: function initMap(longitude,latitude){ createMap(longitude,lati ...

  2. 微信H5页面嵌入百度地图---解决手机的webKit定位,ios系统对非https网站不提供支持问题

    微信H5页面嵌入百度地图---解决手机的webKit定位,ios系统对非https网站不提供支持问题 参考文章: (1)微信H5页面嵌入百度地图---解决手机的webKit定位,ios系统对非http ...

  3. 关于app内嵌h5页面调用百度地图定位问题,为什么定位不准呢?

    关于app内嵌h5页面调用百度地图定位问题,为什么定位不准呢?以下为代码. 百度地图:里面有3种定位方式(a:浏览器定位,b:IP定位,c:定位SDK辅助定位),我选择第3种,是需要app那块添加些什 ...

  4. java 微信 百度地图_[Java教程]H5微信通过百度地图API实现导航方式二

    [Java教程]H5微信通过百度地图API实现导航方式二 0 2017-08-01 23:53:20 要有服务器才行哦 body, html {width: 100%;height: 100%;mar ...

  5. android 百度地图拖动定位,百度地图获取定位,实现拖动marker定位,返回具体的位置名...

    body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;font-family:"微软雅黑"; ...

  6. H5新特性百度地图SDK--API引入、地图控件、地理编码与逆地理编码、地图标注、路径规划(基于2.0)

    一.API基本使用 1.1 大致流程 打开,百度地图官网 登录或者注册一个百度账号,并完成相关验证 登陆并申请成为开发者 在百度地图开发平台的首页选择控制台,在控制台中创建应用 创建好应用以后就能在控 ...

  7. H5 如何唤起百度地图 App

    最近接手了一个需求,要求混合式开发,前端做好 h5 后将页面嵌入到 ios 和 android 中,需要用到百度地图的地图导航.具体功能点如下: 如果手机端(ios, android)安装了百度地图, ...

  8. 地理定位(高德地图官方文档)

    地理定位 HTML5提供的地理定位相关API可以使得网页获取客户端设备所在的地理位置(经纬度),从而给与用户更好的应用体验. 定位的基础原理 IP定位 运营商基站定位 GPS卫星定位 HTML5提供了 ...

  9. 百度地图android室内定位,百度地图4.0正式发布,主打免费语音导航、室内定位、实时公交和生活搜索 (视频)...

    自2010年10月百度地图在塞班平台上线了第一个版本以后,陆续登陆了Android和iPhone平台,据百度地图团队介绍,其最新的用户数已达7000万.今天,百度地图4.0 正式发布(iPhone版 ...

最新文章

  1. 迟语寒:组队学习的那些事
  2. Java通过泛型的模板类型实例化对象
  3. 数据扩展性探讨和总结--转
  4. redis 模糊查找keys
  5. Visual Sourcesafe Internet使用备忘
  6. 突发 , 谷歌官宣安卓改名了!
  7. RHEL常用Linux命令操作 第四章实验报告
  8. NI CompactRIO、labview在车载数据采集中的应用
  9. python Django项目汇总(毕设、课设、学习)
  10. No plugin found for prefix 'mybatis-generator' in the current project ORA-28040: No matching authen
  11. # [Contrastive Learning] Contrastive Coherence Preserving Loss for Versatile Style Transfer
  12. BP算法(误差逆传播算法)简单实现
  13. 《炬丰科技-半导体工艺》 硅光电子器件上的单片砷化铟量子点
  14. $作为分隔符的字符串如何进行切割
  15. 巴西龟饲养日志----巴西龟成长速度
  16. Python更新过pip安装库报错cannot import name main问题
  17. 状态机设计模式(java中的使用)
  18. 搜云科技联合金色财经、荣宝斋 举办笔墨丹青2021艺术鉴赏会
  19. win10 bat脚本设置软件的开机自启动
  20. php decrypt,GitHub - qiling/php-decrypt: PHP Decrypt是一个跨平台用来解密PHP源码的扩展

热门文章

  1. 一本关于互联网与职场的湿暗后厨,和99元人民币的关系
  2. 深度学习网络模型梳理
  3. 内部系统自己搭建还是花钱购买?这是一个问题
  4. 快速上手ECharts,让你的数据不再冷冰!
  5. 苹果最新框架教程之 ProximityReader是什么
  6. Vue 前端显示文件流图片
  7. android webview使用html5input id=input type=file/ 上传相册、拍照照片
  8. Introducing Android Instant Apps - Google I-O 2016 翻译字幕
  9. c语言浮点数如何精确计算,浮点数精确运算的分析和解决办法
  10. 强制重启计算机快捷键,电脑强制关机快捷键_电脑强制关机的快捷键