我使用的是Firefox 30.0(最新的FF),navigator.geolocation.getCurrentPosition
正在使用Chrome,但不适用于此版本的FF。
这是我的代码
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(GEOprocess, GEOdeclined);
}else{
alert('Your browser sucks. Upgrade it.');
}
function GEOdeclined(error) {
alert('Error: ' +error.message);
}
function GEOprocess(position) {
alert('it works');
}
我收到此错误
Error: Unknown error acquiring position
注意:仅当我将FF升级到30.0
时,它才会停止工作答案 0 :(得分:24)
现在我使用的是47 Mozilla。我已经尝试了一切,但这一切都是这个问题。 但是然后我在地址栏中打开 about:config ,转到 geo.wifi.uri 并将其值更改为" {{ 3}}&#34 ;. 作品!
答案 1 :(得分:2)
我有一个可能的解决方案:
我认为mozilla家伙在位置请求过程中有所改变,所以现在需要更多时间并且函数getCurrentPosition会超时。
这将回答为什么它在chrome中工作的问题,在FF 29中工作而不在FF 30.0中工作。
但那是一个沉淀。现在让我们回到现实世界:
我已经拨打了10秒的超时时间,现在可以正常工作了。我已经这样做了:
navigator.geolocation.getCurrentPosition(onSuccess, onError, {timeout:10000});
这为我修好了。它适用于FF 30。