每次访问页面时都会触发地理位置代码,而不仅仅是在初始加载或刷新时
Posted
技术标签:
【中文标题】每次访问页面时都会触发地理位置代码,而不仅仅是在初始加载或刷新时【英文标题】:having the geolocation code fire every time the page is visited not just on initial load or refresh 【发布时间】:2017-05-17 02:55:45 【问题描述】:我的应用程序的 index.html 页面上有以下代码
每次启动应用程序或刷新索引页面时,代码都会加载坐标并附加到页面上按钮所附的 url 上
但是,如果我只是从应用程序中的另一个页面返回主页,则下面的代码不会刷新,并且按钮没有附加坐标
我如何修改代码,以便每次页面加载时运行下面的代码,从而将当前坐标附加到页面上的按钮
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// device APIs are available
//
function onDeviceReady()
navigator.geolocation.getCurrentPosition(onSuccess, onError);
function changeLinksAddCoords( lat, long )
$('.toChange').each( function(index)
var el = $(this);
var href = el.attr('href');
href += lat + ',' + long
el.attr('href', href);
);
// onSuccess Geolocation
//
function onSuccess(position)
var element = document.getElementById('geolocation');
changeLinksAddCoords( position.coords.latitude, position.coords.longitude)
element.innerHTML = + position.coords.latitude + ',' + position.coords.longitude;
// onError Callback receives a PositionError object
//
function onError(error)
alert('code: ' + error.code + '\n' +
'message: ' + error.message + '\n');
</script>
【问题讨论】:
你已经有了答案:migrate from jquerymobile 1.2.1 to 1.4.5 【参考方案1】:假设您标记 jquery-mobile 是因为您正在使用它,请处理 pagecontainer 的 beforeshow 事件:
http://api.jquerymobile.com/pagecontainer/#event-beforeshow
每次访问该页面时都会触发此事件。
【讨论】:
以上是关于每次访问页面时都会触发地理位置代码,而不仅仅是在初始加载或刷新时的主要内容,如果未能解决你的问题,请参考以下文章
每次刷新应用程序时都会触发 Flutter web Firebase onAuthStateChanges
每次添加新项目时都会触发 RadListView SelectedIndexChanged