gpt4 book ai didi

javascript - 地理位置监听器[listenerFunc]未定义

转载 作者:行者123 更新时间:2023-11-28 05:45:54 26 4
gpt4 key购买 nike

我搜索并找到了相关帖子,但没有一个具体解释为什么我从 Mozilla Dev 网站提取的代码(略有更改)中收到错误...有人可以启发我吗?

我在 Windows 7 笔记本电脑上使用 Firefox 47.0.1

来自 Mozilla 的 Geolocation getCurrentPosition() 示例代码如下

https://developer.mozilla.org/en-US/docs/Web/API/Geolocation/getCurrentPosition

function GeoLocationSuccess(pos) {
var crd = pos.coords;
console.log(crd);

console.log('Your current position is:');
console.log('Latitude : ' + crd.latitude);
console.log('Longitude: ' + crd.longitude);
console.log('More or less ' + crd.accuracy + ' meters.');
return true;
}

function GeoLocationError(err) {
console.warn('ERROR(' + err.code + '): ' + err.message);
return true;
}

function GetLocation()
{
var options = {
enableHighAccuracy: true,
timeout: 5000,
maximumAge: 0
};
navigator.geolocation.getCurrentPosition(GeoLocationSuccess, GeoLocationError, options);
return true;
}
GetLocation();

当我执行它时,我在控制台中看到以下内容(我将纬度/经度编辑/更改为 99)

this.listener[listenerFunc] is undefined NetworkGeolocationProvider.js:544:0 
POST XHR https://www.googleapis.com/geolocation/v1/geolocate [HTTP/2.0 200 OK 97ms]
Coordinates { latitude: 99.3951796, longitude: 99.374427299999999, altitude: 0, accuracy: 94, altitudeAccuracy: 0, heading: NaN, speed: NaN }
Your current position is:
Latitude : 99.3951796
Longitude: 99.374427299999999
More or less 94 meters.

为什么我会收到错误消息this.listener[listenerFunc] 未定义

我有一个想法,由于 get 是异步的,它期望在有响应后运行一个函数,但是我不清楚该函数调用/名称是在哪里请求/命名的。

感谢所有帮助

最佳答案

我在 DeviceReady 之前寻求结果...当我在 DeviceReady 之后延迟我的请求时,错误消失了。

但是...

但我不太清楚的是,当我只发出一次请求时,为什么错误会每隔几秒就会重复一次。我将 console.log 调用放入 GeoLocationSuccess() 调用中,它确认我只调用了 GeoLocationSuccess() 一次,但尽管如此,错误消息还是重复了几次。我怀疑这可能是 Firefox 47.0.1 中的一个错误

关于javascript - 地理位置监听器[listenerFunc]未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38528928/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com