百度API獲取地理位置


1、問題1:百度API通過chorme瀏覽器獲取的位置坐標誤差有點大。使用IE瀏覽器能准確定位。

2、說法1:網上有人說chorme瀏覽器現在只支持https協議的網站

由於百度API是http協議,所以百度API加載出了問題

3、說話2:chorme瀏覽器的坐標和百度的坐標不一樣,需要轉換。將百度API里的坐標轉換實例代碼粘貼下來,里面的new BMap.Convertor().translate(pointArr, 3, 5, translateCallback)方法里的回調函數不執行,但在百度API的demo里卻執行。

4、問題2:突然出現你申請的百度密鑰不正確...,但過幾天卻沒有問題。

5、chorme不准確暫時無法解決。

 

添加百度API:

js代碼如下:

 var ggPoint = null;
    var bm = null;
    var geolocation = new BMap.Geolocation();
    geolocation.getCurrentPosition(function (r) {
        if (geolocation.getStatus()==BMAP_STATUS_SUCCESS) {
            bm = new BMap.Map("allmap");
            ggPoint = r.point;
            var mk = new BMap.Marker(r.point);
            bm.addOverlay(mk);
            bm.centerAndZoom(ggPoint, 12);
            bm.addControl(new BMap.NavigationControl());

            var convertor = new BMap.Convertor();
            var pointArr = [];
            pointArr.push(ggPoint);
            convertor.translate(pointArr, 1, 5, translateCallback);

            //坐標轉換完之后的回調函數
            translateCallback = function (data) {
                if (data.status === 0) {
                    var marker = new BMap.Marker(data.points[0]);
                    bm.addOverlay(marker);
                    var label = new BMap.Label("轉換后的百度標注(正確)", { offset: new BMap.Size(20, -10) });
                    marker.setLabel(label); //添加百度label
                    bm.setCenter(data.points[0]);
                }
            }
                                 
        }
    });

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM