這個有一定的誤差哈,具體的誤差是多少,有興趣的朋友可以去測試下
直接上代碼
index.html頁面代碼:
<html> <head lang="en"> <meta charset="utf-8"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0,user-scalable=no" name="viewport"> <meta content="yes" name="apple-mobile-web-app-capable"> <meta content="black" name="apple-mobile-web-app-status-bar-style"> <meta content="telephone=no" name="format-detection"> <title>瀏覽器中獲取當前經緯度</title> <link href="../addons/weilive/style/css/user.css" rel="stylesheet"> <script src="baiduposition.js" type="text/javascript"></script> <script src="http://api.map.baidu.com/api?v=2.0&ak=s6vFvPKgaEnI2ImqBpKGDj0m"></script> <script src="http://api.map.baidu.com/getscript?v=2.0&ak=s6vFvPKgaEnI2ImqBpKGDj0m&services=&t=20160401164342" type="text/javascript"></script> </head> <body> <div class="app-view"> <a style="cursor: pointer;" onclick="baiduPosition(35);" class="z-sel"><span>獲取經緯度</span></a> </div> <script type="text/javascript"> //該js函數是必須要的不然要報錯 function positions(json, cid) { //可以獲取到了地理位置,跳轉頁面,然后在跳轉的頁面在獲取經緯度的值 //window.location.href = "./index.php?i=5&c=entry&do=list&m=weilive&cid=" + cid + "&lng=" + json['lng'] + "&lat=" + json['lat']; //alert(json['lng']); } </script> </body> </html>
baiduposition.js代碼
document.write("<script src='http://api.map.baidu.com/api?v=2.0&ak=s6vFvPKgaEnI2ImqBpKGDj0m'></script>"); function baiduPosition(cid){ var geolocation = new BMap.Geolocation(); geolocation.getCurrentPosition(function(r){ if(this.getStatus() == BMAP_STATUS_SUCCESS){ var position = { lng: r.point.lng, lat: r.point.lat } if(cid == 'sort'){ sort(position); } else { positions(position, cid); } alert('您的位置:'+r.point.lng+','+r.point.lat); } else { //alert('獲取當前位置失敗,請確定您開啟了定位服務'); } },{enableHighAccuracy: true}); }
具體的效果圖如下:
點擊【位置共享信息】后,等幾秒中就會彈出提示信息,我上面的js代碼把alert注釋了咯,需要的把注釋取消就能看見效果了哈
