高德地图进行浏览器定位并自定义定位按钮

要在页面里引入高德地图API进行定位,先要去高德地图官网申请开发的key,这里官网文档写的很清楚。

<script src="https://webapi.amap.com/maps?v=1.3&amp;key=你申请的key值&plugin=AMap.Walking"></script>

然后按照API文档里接入js代码,引入后高德地图会默认给你一个定位按钮,这个按钮不能自定义,只能放在地图的四个角,不过可以自定义这个按钮的图标样式。

这里的小技巧就是在buttonDOM参数设置成一个隐藏的input,这样在地图上就看不到默认的定位按钮了。

    var map, geolocation;
    //加载地图,调用浏览器定位服务
    map = new AMap.Map(‘dituContent‘, {
        zoom: 16,
        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
            buttonDom:‘<input hidden="true" >‘, 
            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>‘);
    }
    //解析定位错误信息
    function onError(data) {
        document.getElementById(‘tip‘).innerHTML = ‘定位失败‘;
    }

然后在也面上自定义一个按钮,并绑定上定位的js方法。

<div id="dituContent"></div>
<div id="tip"></div>
<a onClick="geolocation.getCurrentPosition()"></a>  //这里是自订的按钮,帮上定位的方法。
时间: 2024-10-07 05:28:41

高德地图进行浏览器定位并自定义定位按钮的相关文章

融云&amp;高德地图-实现地理位置发送

效果预览 Send: Click LocationMessage: 实现 1:注册高德地图开发者账号,创建应用.获取高德地图的 appkey 2: jar 包建议直接从 融云 demo 中拷贝.因为某地图厂商的版本兼容做的不好.可能你下载的新版本的 jar. 在老版本的实现代码中就找不到这个接口.或者那个接口变动了 3: 参考 demo 代码 在 RongCloudEvent.java 上实现了 地理位置提供者接口 . onStartLocation 方法中点击开启 地图的 Activity @

Android学习之高德地图的通用功能开发步骤

这次分享的心得是高德地图的开发,基本上都是按照高德官网上的API文档来进行开发,废话不多说,走起. 第一步:申请高德地图的一个key,有了这个key我们的高德地图才可以正确用起来. 至于怎么申请高德地图的key,其实很简单,这里我大概说一下步骤:打开网页http://lbs.amap.com,注册一个高德地图API的一个账号(这里我声明一下,并不是给高德打广告,我只是分享一下我的这次学习经历而已),注册成功之后,会提示你成为开发者,成为开发者之后就能获取一个key了,获取key需要填写的内容,可

Android高德地图开发详解

这段时间开发的时候用到了高德地图,对高德地图开发有心得体会,现在分享给大家,对我开发过百度地图的我来说,总体来说高德地图Demo,没有百度讲解的详细 个人更偏向于使用百度地图,但是没办发,项目需要使用高德地图,我开发的是定位,更具经纬度添加标记,标记点击事件,以及路线规划废话不多说,上代代码 那么首先导入高德给的jar,包,我开发的是2d地图, 这个包结构图,高德题图api也提供了步骤,就不多说了 下面添加权限,设置key <uses-permission android:name="an

代码笔记:使用高德地图API创建地图以及获取当前地址经纬度

创建API地图带有点标记 <script src="http://webapi.amap.com/maps?v=1.4.1&key=bcf87f3263f98cc37309298bca20c622"></script> <script type="text/javascript"> // 实例化点标记 function addMarker() { marker = new AMap.Marker({ icon: "

【高德地图API】从零开始学高德JS API(七)——定位方式大揭秘

摘要:关于定位,分为GPS定位和网络定位2种.GPS定位,精度较高,可达到10米,但室内不可用,且超级费电.网络定位,分为wifi定位和基站定位,都是通过获取wifi或者基站信息,然后查询对应的wifi或者基站位置数据库,得到的定位地点.定位数据库可以不断完善不断补充,所以,越定位越准确.本文详细描述了,如果使用高德JS API来实现位置定位.城市定位的方法,包含了IP定位,浏览器定位,检索定位等多种网络定位方法.当然,如果您的手机有GPS功能,那么使用浏览器定位的时候,会自动获取GPS信息,使

Android Studio之高德地图实现定位和3D地图显示

在应用开发中,地图开发是经常需要使用的"组件",国内比较出名的是就是百度地图和高德地图. 此博客讲的是高德地图实现定位和3D地图显示,并标注相应位置,话不多说,先看看效果,在上代码. 效果如图: 首先注册高德成为开发者(打开高德地图,点击底部的开发者平台),创建应用,按照要求填写相应信息,如下图: 途中包含了发布版的SHA1安全码和测试版SHA1安全码,两者的值可以看  博客 :Android Studio apk打包,keystore.jks文件生成,根据keystore密钥获取SH

高德地图(基本地图+定位+周边搜索)第一版

package company.com.gaodedemo; import android.app.Activity; import android.app.ProgressDialog; import android.content.DialogInterface; import android.graphics.Color; import android.os.Bundle; import android.util.Log; import android.view.View; import

(高德地图)marker定位 bug 解决总结

项目背景: 一个项目bug,项目中用到高德地图,默认打开页面会生成一个marker(下图红色icon),然后用户拖动marker到想要的位置,并且保存. 用户反映定位不准确,在当前页面编辑的位置,到后台打开位置就会有偏移. 因为后台打开时候是根据经纬度生成的marker,经过检查最终确定是前台页面,拖动marker定位 获取经纬度 那里出的问题. 这里不得不说下个人情况,此项目是他人开发,而开发人员已经不在公司,bug转发给我了.自己之前也没怎么使用过高德,主要使用的是谷歌地图和mapbox.

Unity与Android交互-Unity接入高德地图实现定位以及搜索周边的功能(使用Android Studio)详细操作

刚进公司给安排的任务就是Unity接入高德地图,算是踩了不少坑总算做出来了,抽点时间写个博客记录一下 废话不多说 先上效果图 获取定位并根据手机朝向显示周边信息            使用的Unity版本为5.5,Androad Studio 2.3.1 接下来开始讲具体操作 首先是Androad Studio的基本配置 1.创建工程,空白的就行,反正也用不到界面布局 等待创建完成 2.新建库模块: 切换到Project视图 右击你的项目 新建一个库模块-用来负责与Unity交互 当然你也可以不