js高德地图手机定位

复制代码
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<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=9f831272996d8fb9c2765393725e3f96"></script>
    <script type="text/javascript" src="http://cache.amap.com/lbs/static/addToolbar.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');
        map.plugin('AMap.Geolocation', function() {
            geolocation = new AMap.Geolocation({
                enableHighAccuracy: true, //是否使用高精度定位,默认:true
                timeout: 10000, //超过10秒后停止定位,默认:无穷大
                maximumAge: 0, //定位结果缓存0毫秒,默认:0
                convert: true, //自动偏移坐标,偏移后的坐标为高德坐标,默认:true
                showButton: true, //显示定位按钮,默认:true
                buttonPosition: 'LB', //定位按钮停靠位置,默认:'LB',左下角
                buttonOffset: new AMap.Pixel(10, 20), //定位按钮与设置的停靠位置的偏移量,默认:Pixel(10, 20)
                showMarker: true, //定位成功后在定位到的位置显示点标记,默认:true
                showCircle: true, //定位成功后用圆圈表示定位精度范围,默认:true
                panToLocation: true, //定位成功后将定位到的位置作为地图中心点,默认:true
                zoomToAccuracy: true //定位成功后调整地图视野范围使定位位置及精度范围视野内可见,默认:false
            });
            map.addControl(geolocation);
            geolocation.getCurrentPosition();
            AMap.event.addListener(geolocation, 'complete', onComplete); //返回定位信息
            AMap.event.addListener(geolocation, 'error', onError); //返回定位出错信息
        });
        var myplace = ''; //我的位置
        var mycity = ''; //我所在的城市
        //解析定位结果
        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>');
            // parent.loca(data);
            myplace = data.formattedAddress; //我的位置
            mycity = data.addressComponent.city; //我所在的城市
            console.log('str',data.position.getLng(),data.position.getLat());
            console.log("我所在的地点为 " + data.formattedAddress);
            console.log("我所在的城市为 " + data.addressComponent.city);
        }

        function getSomeOfMyVal() {
            return myplace + "+" + mycity;
        }

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

        function getGeolocation() {
            geolocation.getCurrentPosition();

        }
        </script>
    </body>

</html>
复制代码

 

posted @   abcByme  阅读(3149)  评论(2编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示