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]); } } } });