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){ //超时为60000毫秒(60秒) 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>