1.瞭解html5 geolocation
HTML5 Geolocation(地理定位)用於定位用戶的位置。
鑑於該特性可能侵犯用戶的隱私,除非用戶同意,否則用戶位置信息是不可用的。=> 使用時會有請求提示框,需要用戶點擊確認。
2.瀏覽器支持
Internet Explorer 9、Firefox、Chrome、Safari 以及 Opera 支持地理定位。
對於擁有 GPS 的設備,比如 iPhone,地理定位更加精確。
3.一個實例。
function position() { //判斷瀏覽器是否支持定位 if(navigator.geolocation) { //這裏接受兩個參數 定位成功則執行第一個函數,否則執行第二個 navigator.geolocation.getCurrentPosition(showPosition, showError); } else { alert("不支持定位"); }; }; //接受一個參數 參數爲對象 function showPosition(position){ //position中有一個coords 這個下面 有latitude:緯度 longitude:經度 $.ajax({ type: "get", url: "http://api.map.baidu.com/geocoder/v2/?callback=renderReverse&location=" + position.coords.latitude + "," + position.coords.longitude + "&output=json&pois=1&ak=DMCiysDe5wZUpPeTa7xZqUGnoFIUofmi",//這個ak可以去百度地圖申請 async: false, dataType:"jsonp", success: function(data) {//拿到返回的地址信息 return data; } }); }; //err //接收一個錯誤參數 function showError(error){ switch(error.code) { case error.PERMISSION_DENIED: alert("定位失敗,用戶拒絕請求地理定位"); break; case error.POSITION_UNAVAILABLE: alert("定位失敗,位置信息是不可用"); break; case error.TIMEOUT: alert("定位失敗,請求獲取用戶位置超時"); break; case error.UNKNOWN_ERROR: alert("定位失敗,定位系統失效"); break; }; };