• 高德地图API定位当前用户地址

    1.第一步创建应用和KEY

    image.png

    2.撸代码  

    <!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="https://a.amap.com/jsapi_demos/static/demo-center/css/demo-center.css"/>

        <style>

            html, body, #container {

                height: 100%;

            }


            .info {

                width: 26rem;

            }

        </style>

    <body>

    <div id='container'></div>

    <div class="info">

        <h4 id='status'></h4>

        <hr>

        <p id='result'></p>

        <hr>

        <p>由于众多浏览器已不再支持非安全域的定位请求,为保位成功率和精度,请升级您的站点到HTTPS。</p>

    </div>

    <script type="text/javascript">

    //秘钥是配置必须在jsapi脚本加载之前设置,否则无效

        window._AMapSecurityConfig = {

            securityJsCode: '秘钥', //秘钥

        }

    </script>

    <script type="text/javascript"

            src="https://webapi.amap.com/maps?v=1.4.15&key=申请的key值&plugin=AMap.CitySearch"></script>

    <script type="text/javascript">

        var map = new AMap.Map('container', {

            resizeEnable: true

        });

        AMap.plugin('AMap.Geolocation', function () {

            var geolocation = new AMap.Geolocation({

                enableHighAccuracy: true,//是否使用高精度定位,默认:true

                timeout: 10000,          //超过10秒后停止定位,默认:5s

                buttonPosition: 'RB',    //定位按钮的停靠位置

                buttonOffset: new AMap.Pixel(10, 20),//定位按钮与设置的停靠位置的偏移量,默认:Pixel(10, 20)

                zoomToAccuracy: true,   //定位成功后是否自动调整地图视野到定位点


            });

            map.addControl(geolocation);

            geolocation.getCurrentPosition(function (status, result) {

                if (status == 'complete') {

                    onComplete(result)

                } else {

                    onError(result)

                }

            });

        });


        //解析定位结果

        function onComplete(data) {

            document.getElementById('status').innerHTML = '定位成功'

            var dizhi = data.addressComponent.province +'-'+ data.addressComponent.city +'-'+ data.addressComponent.district

            matchingCity(dizhi)

        }

        //解析定位错误信息

        function onError(data) {

            document.getElementById('status').innerHTML = '定位失败'

            document.getElementById('result').innerHTML = '失败原因排查信息:' + data.message;

        }

        function matchingCity(dizhi) {

            var arr = ['河南省-郑州市-中原区' , '河南省-郑州市-金水区' , '河南省-郑州市-二七区'];

            var matching = [];

            for (i = 0; i < arr.length; i++) {

                if (arr[i] === dizhi) {

                    matching[i] = dizhi;

                }

            }

            document.getElementById('result').innerHTML = matching[2]

            /*$.ajax({

                url: "{:url('')}",

                data: { dizhi:dizhi },

                dataType: 'json',

                type: 'post',

                async: true,

                error: function (e) {

                },

                success: function (data) {

                    if (data.code) {


                    }

                }

            });*/

        }

    </script>

    </body>

    </html>