【问题标题】:geoLocation enabling without page-refresh?无需页面刷新即可启用地理位置?
【发布时间】:2012-04-09 09:04:20
【问题描述】:

目前,如果 GPS 关闭并(在通知用户后)打开,我们必须刷新网页(实际上是 PhoneGap 应用程序)。

如何在不刷新页面/应用的情况下更新GeoLocation 状态?

【问题讨论】:

    标签: javascript cordova geolocation w3c-geolocation


    【解决方案1】:

    为什么不简单地使用 setInterval 每隔几秒检查一次支持?

    【讨论】:

    • 因为很遗憾,geoLocation 似乎不会在没有完全刷新的情况下更新。
    • 我不相信你是对的。你有一个简单的单页示例我可以运行来验证吗?
    【解决方案2】:

    希望这可以帮助其他人。我在尝试通过 Google Maps API 在多页 phonegap+JQM 应用程序中加载 geoLocation 时遇到了同样的问题。 setInterval/setTimer 也不能正常工作。我让它工作的唯一方法就是完全刷新,有点让应用看起来坏了。

    onDeviceReady 对我也不起作用,因为在 index.html 文件中没有调用地理位置

    我的解决方案是在地理定位视图/页面加载时不尝试调用地理定位。而是插入一个按钮来调用脚本:

    <a href="#" onclick="getLocation();" data-role="button">Get My Location</a>
    

    然后使用附加到 getLocation() 的 Javascript 调用地理定位 API

      function getLocation() {
            navigator.geolocation.getCurrentPosition(onSuccess ,onError,
          { timeout: 10000, enableHighAccuracy: true } );
            var lat;
            var lng;
        }
    

    【讨论】:

    • 实际上,即使这种解决方法也不是万无一失的。似乎地理定位也不想第一次开火。我要去看看 phonegap 论坛。
    猜你喜欢
    • 1970-01-01
    • 2015-12-08
    • 1970-01-01
    • 2016-01-08
    • 2013-05-28
    • 2013-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多