调用搞得梯度

app,pc都一样,如果是app加上这个会更好一点

<meta name="viewport" content="initial-scale=1.0, user-scalable=no">

首先百度高地地图,进入开放api部分,没有的话先注册账号。个人的,企业的都可以

然后点击控制台,应用管理部分创建一个应用,在这儿能获取到至关重要的key

之后贴入代码

<div id="container" style="display:none;"></div>

这个div容器要有,但是可以隐藏掉。

 <script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=你添加应用产生的key值&plugin=AMap.ToolBar,AMap.Driving"></script>

这个是调用高德,引用key值后面的是插件,是需要有的

 var map = new AMap.Map('container',{
            resizeEnable: true,
            zoom: 11
        });
        var formattedAddress;
        var lng;
        var lat;
        var geolocation;
        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', one rror);      //返回定位出错信息
            
            function onComplete (data) {
                // data是具体的定位信息
                console.log(data)
                formattedAddress = data.formattedAddress;
                lng = data.position.lng;
                lat = data.position.lat;
                console.log("1355--"+formattedAddress+"--"+lng+"--"+lat);    
            }

              function one rror (data) {
                // 定位出错
                layer.msg("定位失败,可自行使用导航查询")
              }
        });
        //map.addControl(geolocation);    
        geolocation.getCurrentPosition()
        $("#Navigation").click(function(){
            //layer.msg("该功能暂未开放");
            var drivingOption = {
                policy: AMap.DrivingPolicy.LEAST_TIME,
                map:map,
                resizeEnable: true
            }
            var lngAt = lng+","+lat;
            console.log("1374--"+formattedAddress+"--"+lng+"--"+lat+"--"+lngAt);  
            var driving = new AMap.Driving(drivingOption);
            console.log("1355--"+formattedAddress+"--"+lng+"--"+lat);
            driving.searchOnAMAP({
                origin:lngAt,
                originName:formattedAddress,
                destination:"116.256633,39.860036",
                destinationName:"到达地方地名"
            }) 
        })

这样既可完成

上一篇:获取高德地图


下一篇:如何制作一份疫情场所分布地图?(附数据和源码)