沒有內置功能。我發現超時比設定的精度要好。通常在iPhone上,精確度不會超過100米左右,所以繼續檢查更好是浪費。使用watchPosition()
工作得最好,它似乎三角形,所以三次讀數後,它很少變得更好。我等了五秒鐘,然後停下來。
演示:http://jsfiddle.net/ThinkingStiff/3k859/
HTML:
<div id="result"></div>
腳本:
function setGeolocation() {
var geolocation = window.navigator.geolocation.watchPosition(function (position) {
document.getElementById('result').innerHTML +=
'lat: ' + position.coords.latitude + ', '
+ 'lng: ' + position.coords.longitude + ', '
+ 'accuracy: ' + position.coords.accuracy + '<br />';
},
function() {
//error
},
{
maximumAge: 250,
enableHighAccuracy: true
}
);
window.setTimeout(function() {
window.navigator.geolocation.clearWatch(geolocation)
}, 5000);
};
setGeolocation();
感謝您的顯示功能。這是我計劃寫的,但getCurrentPosition對我的用法看起來很好。 – 2011-11-10 11:40:22
我已經把這個標記爲答案,因爲它本來就是我最初想要的 - 但我不打算使用它,所以不知道它是否可行! – 2011-11-11 09:07:20