我正在使用以下工具成功捕获用户的位置(移动浏览器):
<script>
if ( navigator.geolocation ) {
navigator.geolocation.getCurrentPosition(handlePosition);
}
function handlePosition(pos) {
//this passes lat/long to additional code
}
</script>这是可行的,但通常情况下浏览器似乎会缓存位置数据。调用此地理位置代码的页面显示与用户位置相关的信息,因此发生的情况是用户可以移动(更改位置),页面重新加载,但使用以前的位置数据(显示不正确的数据)。有时页面必须刷新一次甚至两次,页面才能使用新的位置数据。
有没有人知道在每次执行脚本时强制代码获取并使用“最新”位置数据的方法?
顺便说一下,我在iOS Safari (6.1)中遇到了问题。还不能在Android上测试。
感谢你的阅读和帮助。
发布于 2018-08-27 01:31:55
你现在确实有这个能力了。getCurrentPosition采用三个参数:success、failure和options
试试这个:
<script>
if ( navigator.geolocation ) {
navigator.geolocation.getCurrentPosition(handlePosition, (error)=>{}, {maximumAge:0});
}
function handlePosition(pos) {
//this passes lat/long to additional code
}
</script>https://stackoverflow.com/questions/14814256
复制相似问题