我正在为移动设备开发网络应用并使用html5的地理定位API。
当页面加载时,我开始观察位置:
function enableWatchPosition() {
if (navigator.geolocation) {
watchPositionId = navigator.geolocation.watchPosition(locateByBrowser, handleErrorGettingLocation, {
timeout : 30000,
enableHighAccuracy : true,
maximumAge : 1000
});
}
}
如果用户未启用GPS,则会触发handleErrorGettingLocation
并向我显示错误消息,要求他开启GPS。
我的问题是:
假设用户然后打开他的GPS - 我怎么能检测到它(所以我可以重试并再次呼叫enableWatchPosition()
)?我可以听一些js事件吗?
谢谢!
答案 0 :(得分:0)
没有任何此类事件以您从Web应用程序代码中看到的方式公开。当然,标准Geolocation API spec中没有定义此类事件。而且我不相信任何浏览器都会为它公开任何非标准事件。因此,我认为您无法自动重新触发对enableWatchPosition()
功能的调用。
我确信这不是你所希望的答案,但它就是答案。 : - (