有没有人必须处理并设法找到我在以下错误报告中发布的Firefox 5地理定位问题的可行解决方法。链接到报告比在此重新描述更容易。
https://bugzilla.mozilla.org/show_bug.cgi?id=675533
当然,我不是这个星球上唯一被咬过的人。
答案 0 :(得分:2)
这并没有真正解决问题的根源,但我处理此问题的策略是设置我立即使用的默认位置点(不等待地理定位问题得到解答)。
如果我从用户那里获得了一个位置,我只需将其更改为新位置即可。如果我得到拒绝或根本没有回答,我就会留在默认位置。
根据我的经验,桌面客户端(在我的情况下,在固定的Windows计算机上的Firefox)比移动客户端(在我的iPhone上的Safari中)更长 响应。我被迫将超时设置为10秒(10000),以便为桌面客户端提供足够的响应时间。因此,如果你有一张地图,那么直接将地图初始化并以默认位置为中心将比用户必须等待响应时更快地为用户提供地图上的地图。
祝你的定位项目好运!
答案 1 :(得分:2)
我可能会有点迟到但希望我能帮助别人。 我的解决方法是基于延迟通话。如果在延迟通话发生时没有解决问题,我会产生怀疑:)
var timeIsPassig = false;
function anyThing(){
timeIsPassig = true;
setTimeout(
function(){
if (timeIsPassig) {
timeIsPassig = false;
console.log("Waiting too much... Or did you say not now? :-P");
}
},
10000
);
navigator.geolocation.getCurrentPosition(
function (pos) {timeIsPassig = false; /* rest of positioning*/},
function (err) {timeIsPassig = false; /* rest of error handling*/},
{maximumAge: 30000, timeout: 10000, enableHighAccuracy: true}
)
}