使用百度地图 Javascript API,在国内可以使用,但是在境外意大利无法获取定位?

<script type="text/javascript">

        // 百度地图API功能

        var map = new BMap.Map('allmap');

        var poi = new BMap.Point(116.307852, 40.057031);

        var addressPost;

        var CURRENT_LNG;

        var CURRENT_LAT;

        map.centerAndZoom(poi, 18);

        map.enableScrollWheelZoom();

        //获取当前位置信息

        var getCurrentLocation = function (lg, lt) {

            geoc.getLocation(new BMap.Point(lg, lt), function (rs) {

                var addComp = rs.address;

                var fujinAddeessArr = rs.surroundingPois[0];

                document.getElementById('resultText').innerText = '当前位置 :' + fujinAddeessArr.title + '——' + fujinAddeessArr.address;

                addressPost = fujinAddeessArr.title + '——' + fujinAddeessArr.address;

                CURRENT_LNG = lg;

                CURRENT_LAT = lt;

            });

        }


        var lng, lat;

        //获取当前定位

        var geoc = new BMap.Geocoder();

        var geolocation = new BMap.Geolocation();

        geolocation.getCurrentPosition(function (r) {

            if (this.getStatus() == BMAP_STATUS_SUCCESS) {

                var mk = new BMap.Marker(r.point);

                map.addOverlay(mk);

                map.panTo(r.point);

                lng = r.point.lng

                lat = r.point.lat

                getCurrentLocation(lng, lat)

            }

            else {

                alert('failed' + this.getStatus());

            }

        }, { enableHighAccuracy: true })



        map.addEventListener("touchstart", function (e) {    //给地图添加点击事件

            map.clearOverlays();//清除地图上所有覆盖物

            //获取经纬度

            var lng = e.point.lng;

            var lat = e.point.lat;


            //创建标注位置

            var pt = new BMap.Point(lng, lat);

            var myIcon = new BMap.Icon("../../static/img/Location1.png", new BMap.Size(20, 25), { anchor: new BMap.Size(5, 20), infoWindowAnchor: new BMap.Size(10, 0) });

            var marker2 = new BMap.Marker(pt, { icon: myIcon });  // 创建标注

            map.addOverlay(marker2); //方法向地图中添加单个覆盖物时会触发此事件,将标注添加到地图中

            getCurrentLocation(lng, lat)

        });


        var ac = new BMap.Autocomplete(    //建立一个自动完成的对象

            {

                "input": "suggestId",

                "location": map

            });

        function G(id) {

            return document.getElementById(id);

        }


        var myValue;

        ac.addEventListener("onconfirm", function (e) {    //鼠标点击下拉列表后的事件

            var _value = e.item.value;

            myValue = _value.province + _value.city + _value.district + _value.street + _value.business;

            G("searchResultPanel").innerHTML = "onconfirm<br />index = " + e.item.index + "<br />myValue = " + myValue;

            setPlace();

        });


        function setPlace() {

            map.clearOverlays();    //清除地图上所有覆盖物

            function myFun() {

                var pp = local.getResults().getPoi(0).point;    //获取第一个智能搜索的结果

                map.centerAndZoom(pp, 18);

                map.addOverlay(new BMap.Marker(pp));    //添加标注

                getCurrentLocation(pp.lng, pp.lat)

            }

            var local = new BMap.LocalSearch(map, { //智能搜索

                onSearchComplete: myFun

            });

            local.search(myValue);

        }


慕沐5075835
浏览 1175回答 1
1回答

super丶千

查一下,百度地图是否支持境外定位?
打开App,查看更多内容
随时随地看视频慕课网APP