取消 HTML5 中正在进行的 watchPosition 调用
clearWatch 方法会取消正在进行的 watchPosition 调用。当取消后,watchPosition 调用将停止检索设备当前地理位置的更新信息。
<!DOCTYPE HTML> <html> <head> <script> var watchID; var geoLoc; function showLocation(position) { var latitude = position.coords.latitude; var longitude = position.coords.longitude; alert("Latitude : " + latitude + " Longitude: " + longitude); } function errorHandler(err) { if(err.code == 1) { alert("Error: Access is denied!"); } else if( err.code == 2) { alert("Error: Position is unavailable!"); } } function getLocationUpdate(){ if(navigator.geolocation){ // timeout at 60000 milliseconds (60 seconds) var options = {timeout:60000}; geoLoc = navigator.geolocation; watchID = geoLoc.watchPosition(showLocation, errorHandler, options); } else{ alert("Sorry, browser does not support geolocation!"); } } function stopWatch(){ geoLoc.clearWatch(watchID); } </script> </head> <body> <form> <input type = "button" onclick = "getLocationUpdate();" value = "Watch Update"/> <input type = "button" onclick = "stopWatch();" value = "Stop Watch"/> </form> </body> </html>
广告