h5移动端获取当前手机位置的方法,js纯获取,非原生

摘要:
');console.log;//this.$showToast('失败--地理位置权限被拒绝。
mounted() {
    
var mapObj = new AMap.Map('iCenter');
            mapObj.plugin('AMap.Geolocation', function() {
                let geolocation = newAMap.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
});
                mapObj.addControl(geolocation);
                geolocation.getCurrentPosition();
                AMap.event.addListener(geolocation, 'complete', onComplete); //返回定位信息
                AMap.event.addListener(geolocation, 'error', onError);       //返回定位出错信息
});

            functiononComplete(obj){
                //var res = '经纬度:' + obj.position + 
                //'
精度范围:' + obj.accuracy + 
                //'米
定位结果的来源:' + obj.location_type + 
                //'
状态信息:' + obj.info + 
                //'
地址:' + obj.formattedAddress + 
                //'
地址信息:' + JSON.stringify(obj.addressComponent, null, 4);
                //alert(res);
                this.position =obj.position
                console.log(this.position.lat,this.position.lng)
                
            }

            functiononError(obj) {
                alert('失败--地理位置权限被拒绝。');
                console.log(obj);
                //this.$showToast('失败--地理位置权限被拒绝。');
}
}

免责声明:文章转载自《h5移动端获取当前手机位置的方法,js纯获取,非原生》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇google代码风格(转)Charles中文破解版下载安装及使用教程(附带免费下载链接)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

js与Nodejs的单线程和异步--初探

Event Loop Event Loop : 浏览器使用 Event Loop 来协调 DOM 事件、UI 渲染、脚本执行和网络事件等。 Task Queue (Event Queue) :每当 DOM 事件、计时器事件或者网络事件被触发时,它们的回调函数和 Context 都会被压入 Event Queue,而 Event Loop 则会从中取出...

js 调用微信浏览器内置方法,启动支付

$.post("{php echo app_url('pay/cash')}",{orderno:orderno,paytype:paytype},function(m){ //todo: 跳转到微信支付,获取支付的相关信息 if(!m.errno){...

移动端css、Js优处理

CSS 篇 0.5px细线 移动端 H5 项目越来越多,设计师对于 UI 的要求也越来越高,比如 1px 的边框。在高清屏下,移动端的 1px 会很粗。 那么为什么会产生这个问题呢?主要是跟一个东西有关,DPR(devicePixelRatio) 设备像素比,它是默认缩放为 100%的情况下,设备像素和 CSS 像素的比值。目前主流的屏幕 DPR=2(...

提高Vector容器的删除效率

vector容器是类似与一个线性数组,索引效率高,插入,删除的效率很低,需要遍历数据列表,一般情况下vector的删除操作由一下函数完成: iterator erase(iterator position) //删除一个位置 iterator erase(iterator first, iterator last)...

js-定时器

知识 要用定时器,先清除定时器   1、 定时器   setInterval() 循环定时器;周而复始的执行(循环执行)  setTimeout()( 执行事件,间隔时间(单位毫秒)) <script> var num=0; setInterval(function(){ console.log( num);...

js Math方法说明

Math对象 Math对象,提供对数据的数学计算。 使用 Math 的属性和方法,代码如下:  <script type="text/javascript"> var mypi=Math.PI; var myabs=Math.abs(-15); document.write(mypi); document.write(my...