高德获取经纬度与对应地区(思路:先获取经纬度 ---再通过经纬度获取地址)

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
    <title>浏览器定位</title>
    <link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119.css" />
    <script type="text/javascript" src="http://webapi.amap.com/maps?v=1.4.3&key=f1a56185c42312bf72bedd22e2f901c1"></script>
    <script type="text/javascript" src="http://cache.amap.com/lbs/static/addToolbar.js"></script>
    <script src="~/Scripts/jquery-1.8.2.js"></script>
    <body>
        <div id='container'></div>
        <div id="tip"></div>
        <script type="text/javascript">
            /***************************************
            由于Chrome、IOS10等已不再支持非安全域的浏览器定位请求,为保证定位成功率和精度,请尽快升级您的站点到HTTPS。
            ***************************************/
            var map, geolocation;
            //加载地图,调用浏览器定位服务
            map = new AMap.Map('container', {
                resizeEnable: true
            });
            map.plugin('AMap.Geolocation', function () {
                geolocation = new AMap.Geolocation({
                    enableHighAccuracy: true,//是否使用高精度定位,默认:true
                    timeout: 10000,          //超过10秒后停止定位,默认:无穷大
                    buttonOffset: new AMap.Pixel(10, 20),//定位按钮与设置的停靠位置的偏移量,默认:Pixel(10, 20)
                    zoomToAccuracy: true,      //定位成功后调整地图视野范围使定位位置及精度范围视野内可见,默认:false
                    buttonPosition: 'RB'
                });
                map.addControl(geolocation);
                geolocation.getCurrentPosition();
                AMap.event.addListener(geolocation, 'complete', onComplete);//返回定位信息
                AMap.event.addListener(geolocation, 'error', onError);      //返回定位出错信息
            });
            //解析定位结果
            function onComplete(data) {
                var str = ['定位成功'];
                str.push('经度:' + data.position.getLng());
                str.push('纬度:' + data.position.getLat());
                if (data.accuracy) {
                    str.push('精度:' + data.accuracy + ' 米');
                }//如为IP精确定位结果则没有精度信息
                str.push('是否经过偏移:' + (data.isConverted ? '是' : '否'));
                document.getElementById('tip').innerHTML = str.join('<br>');
               
                $.ajax({
                    type: "post",
                    url: "http://restapi.amap.com/v3/geocode/regeo?output=json&location=" + data.position.getLng() + "," + data.position.getLat() + "&key=f1a56185c42312bf72bedd22e2f901c1&radius=1000&extensions=all",
                    data:  null,
                    dataType: "json",
                    success: function (obj) {
                      
                        alert(JSON.stringify(obj));
                    },
                    error: function (xhr, status, error) {
                        alert(error);
                    }
                });


            }
            //解析定位错误信息
            function onError(data) {
                document.getElementById('tip').innerHTML = '定位失败';
            }
        </script>
    </body>
</html>

  

posted on 2018-01-19 18:57  高达  阅读(950)  评论(0)    收藏  举报

导航