可以通过判断是否已经获取到当前位置来避免重复获取地理位置。以下是示例代码:
if (navigator.geolocation) { // 已经尝试获取地理位置的标志 var hasCheckedLocation = false;
// 获取当前地理位置
navigator.geolocation.getCurrentPosition(function(position) {
// 已经获取到地理位置
hasCheckedLocation = true;
// 处理地理位置信息
...
});
// 每隔一段时间检查是否已经获取到地理位置
setInterval(function() {
if (!hasCheckedLocation) {
// 未获取到地理位置,重新尝试获取
navigator.geolocation.getCurrentPosition(function(position) {
// 已经获取到地理位置
hasCheckedLocation = true;
// 处理地理位置信息
...
});
}
}, 5000); // 5秒钟检查一次
} else { // 不支持获取地理位置的情况下的处理 ... }
上一篇:避免重复和写得更简洁
下一篇:避免重复获取相同的数据。