果是非https网页,在http协议下通过html5原生定位接口会返回错误,也就是无法正常定位到用户的具体位置,而已经支持https的网站则不会受影响。

目前提供的解决方案:

1、将网站的http设置为Https。

2、通过第三方解决,这也是我目前使用的方法。

首先看下代码差异:

1、在页面引入js

<script src="/Content/Scripts/jquery.flexslider.js"></script>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=6yAoynmTPNlTBa8z1X4LfwGE"></script>
<script type="text/javascript" src="http://developer.baidu.com/map/jsdemo/demo/convertor.js"></script>

  window.navigator.geolocation.getCurrentPosition:通过手机的webKit定位(目前ios系统对非https网站不提供支持)

       navigator.geolocation.getCurrentPosition(translatePoint); //定位
            function translatePoint(position) {
                var currentLat = position.coords.latitude;
                var currentLon = position.coords.longitude;
                SetCookie("curLat", currentLat, 1);//设置cookie
                SetCookie("curLng", currentLon, 1);//设置cookie
                var gpsPoint = new BMap.Point(currentLon, currentLat);
          
                    var pt = new BMap.Point(currentLon, currentLat);
                    var geoc = new BMap.Geocoder();
                    geoc.getLocation(pt, function (rs) {
                        var addComp = rs.addressComponents;
                        SetCookie("curLat", currentLat, 1); //设置cookie
                        SetCookie("curLng", currentLon, 1); //设置cookie
                        //alert(JSON.stringify(addComp));
                        var city = addComp.city; 
  1. //获得具体街道信息
  2. var texts = addComp.district + "-" + addComp.street + "-" + addComp.streetNumber;
  3. $("#nowRoad").text(texts);
  4. });
                    
                     

  2、网站不支持https访问

1、页面引入js

<script src="/Content/Scripts/jquery.flexslider.js"></script>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=6yAoynmTPNlTBa8z1X4LfwGE"></script>
<script type="text/javascript" src="http://developer.baidu.com/map/jsdemo/demo/convertor.js"></script>

  

var geolocation = new BMap.Geolocation();
geolocation.getCurrentPosition(function (r) {
if (this.getStatus() == BMAP_STATUS_SUCCESS) {
var mk = new BMap.Marker(r.point);
currentLat = r.point.lat;
currentLon = r.point.lng;
SetCookie("curLat", currentLat, 1); //设置cookie
SetCookie("curLng", currentLon, 1); //设置cookie
var pt = new BMap.Point(currentLon, currentLat);
var geoc = new BMap.Geocoder();
geoc.getLocation(pt, function (rs) {
var addComp = rs.addressComponents;
SetCookie("curLat", currentLat, 1); //设置cookie
SetCookie("curLng", currentLon, 1); //设置cookie var city = addComp.city;
var addComp = rs.addressComponents;
var texts = addComp.district + "-" + addComp.street + "-" + addComp.streetNumber;
//获取地理位置成功,跳转 }

  

最新文章

  1. 登录(ajax提交数据和后台校验)
  2. HBase JavaAPI操作示例
  3. Java字节、十进制、十六进制、字符串之间的相互转换
  4. 烤鸭的Source Insight学习笔记
  5. eclipse开发 javafx(转)
  6. xhprof安装使用
  7. SG函数 专题练习
  8. Red5 1.0.5安装过程记录
  9. JS问题Uncaught ReferenceError:XXXX is not defined
  10. 关于看似简单的eclipse中tomcat小猫图标消失的问题解决
  11. C语言处理CSV文件的方法(一)
  12. ant—学习记录一
  13. Java OCR tesseract 图像智能字符识别技术 Java代码实现
  14. J2EE十三个规范小结
  15. EF和Dapper之争的关键
  16. 51Nod1376 (dp + BIT // cdq分治)
  17. 【HQL】常用函数
  18. Swift语言精要 - 扩展(Extension)
  19. VS自动添加头部注释
  20. 线程池的corePoolSize、maximumPoolSize和poolSize

热门文章

  1. MySQL 是如何利用索引的
  2. 一篇文章理解Redis集群【转】
  3. NodeJS包管理器之Yarn
  4. CentOS7静默安装Oracle 18g数据库(无图形化界面)
  5. PAT-2019年冬季考试-甲级 7-3 Summit (25分) (邻接矩阵存储,直接暴力)
  6. python对不同类型文件(doc,txt,pdf)的字符查找
  7. 深入理解Python变量与常量
  8. Houdini Mac 添加external editor
  9. 《设计模式》读懂UML类图
  10. Appium脚本(4) 使用uiautomator方法定位元素