我在使用 html5 的地理定位 API 开发的 Web 应用程序中发现了这种奇怪的行为。仅当网站被添加书签,然后在iPad 上使用
页眉以全屏模式运行时,才会出现此问题。<meta name="apple-mobile-web-app-capable" content="yes" />
我正在使用的代码:
function getLocation() {
if (navigator.geolocation) {
alert("No problem up to here");
navigator.geolocation.getCurrentPosition(showPosition, noLocation, { timeout: 10000 });
}
else {
alert("Geolocation is not supported by this browser.");
}
}
function showPosition(position) {
alert("position: " + position.coords.latitude + ', ' + position.coords.longitude);
}
function noLocation(error) {
alert("error.code:" + error.code);
}
然后我从另一个函数调用 getLocation():
timer = window.setInterval(function () { getLocation() }, 10000);
(是的,我已经声明了计时器)
我使用了“窒息”这个词,因为我可以每 10 秒看到一次“到此为止没问题”警报,“ position:
”警报只有一次,之后“ position:
”或“ error.code:
”警报都没有出现。
任何想法为什么会发生这种情况?