javascript - 微信内置浏览器如何定位用户所在城市
大家讲道理
大家讲道理 2017-04-10 15:23:38
[JavaScript讨论组]

我的代码这样写的,但是有个问题,在wifi网络下可以正确定位(杭州),但是把网络切换到移动网络比喻4G网络就不准确了,我在杭州,但是定位显示温州。

<script type="text/javascript" src="http://api.map.baidu.com/getscript?v=1.4&amp;ak=&amp;services=&amp;t=20150522093217"></script>
     <script>
    $(function(){
        var x=document.getElementById("demo");
        var location = new Array(); 
        function getLocation(){ 
          if (navigator.geolocation){ 
            navigator.geolocation.getCurrentPosition(showPosition); 
          }else{
            x.innerHTML="Geolocation is not supported by this browser.";} 
          } 

        function showPosition(position){ 
         x.innerHTML = position.coords.latitude + "|" + position.coords.longitude;
         alert(position.coords.longitude);
         alert(position.coords.latitude);

         var map = new BMap.Map("allmap");
            var point = new BMap.Point(position.coords.longitude,position.coords.latitude);
            map.centerAndZoom(point,12);

            function myFun(result){
                var cityName = result.name;
                map.setCenter(cityName);
                alert(cityName);
            }
            var myCity = new BMap.LocalCity();
            myCity.get(myFun);
            //return  position.coords.latitude + '|' +  position.coords.longitude;
        }
        getLocation();  
    })
    </script>
大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(3)
黄舟

你问题解决了么,能指点下我怎么弄吗

PHPz
var obj = navigator.geolocation.getCurrentPosition(showPosition);
     //console.log(obj);
     function showPosition(position){
        var lng = position.coords.longitude;
        var lat = position.coords.latitude;
        $.post("getCityByLocation.action" , {"lat" : lat , "lng" : lng} ,function(result){
            var bdo = $.parseJSON(result);
        });
     }

后端请求百度地图代码(主要是因为跨域问题,所以做了一次代理请求):
 public void getCityByLocation(){
        String ak = "XXX";
        String lat = getRequest().getParameter("lat");
        String lng = getRequest().getParameter("lng");
        String coordtype = "bd09ll";
        String output = "json";
        String pois = "0";
        
        String param = "", ret = "";
        if (ak != null) {
            param = "ak=" + ak;
        }
        if (lat != null && lng != null) {
            param += "&location=" + lat + "," +lng;
        }
        if (coordtype != null) {
            param += "&coordtype=" + coordtype;
        }
        if (output != null) {
            param += "&output=" + output;
        }
        if (pois != null) {
            param += "&pois=" + pois;
        }
        
        System.out.print("http://api.map.baidu.com/geocoder/v2/?"+param);
        ret = HttpUtils.sendGet("http://api.map.baidu.com/geocoder/v2/?"+param);
        outJsonString(ret);
    }

@vilay ,以上

伊谢尔伦

好像安卓的微信不可以

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号