Jquery mobile jQuery Mobile以编程方式重新初始化/重启应用程序
我正在用phonegap和jquery mobile编写一个应用程序 为了处理未知错误,我需要完全重新启动我的应用程序,并重新初始化所有变量和动态内容,使其恢复到第一次运行时的状态 最初我只是使用$.mobile.changePage($'#home'),这显然不起作用,因为它不会重新初始化任何动态内容或变量,所以我最终使用了双重备份Jquery mobile jQuery Mobile以编程方式重新初始化/重启应用程序,jquery-mobile,cordova,Jquery Mobile,Cordova,我正在用phonegap和jquery mobile编写一个应用程序 为了处理未知错误,我需要完全重新启动我的应用程序,并重新初始化所有变量和动态内容,使其恢复到第一次运行时的状态 最初我只是使用$.mobile.changePage($'#home'),这显然不起作用,因为它不会重新初始化任何动态内容或变量,所以我最终使用了双重备份 是否有一种方法可以在jquery mobile中调用以完全重新启动应用程序并将所有内容设置回初始设置?您可以检查特定页面的pagebeforeshow并初始化为所
是否有一种方法可以在jquery mobile中调用以完全重新启动应用程序并将所有内容设置回初始设置?您可以检查特定页面的pagebeforeshow并初始化为所需的值,而不是重新启动应用程序。因此,每次访问该页面时,值都将被初始化
$.mobile.changePage( "#PageID", {
reverse: false,
changeHash: false
});
$(document).on('pagebeforeshow','#PageID',function(){
/* Intialise all your variables here*/
});
你试过使用这个应用程序吗
重载()方法用于重载当前文档。重载()方法的作用与浏览器中的重载按钮相同。
默认情况下,reload()方法从缓存重新加载,但通过将forceGet参数设置为true,可以强制重新加载从服务器获取页面
请尝试,document.location.href
document.location.href = 'index.html';
要想得到一个完整的解决方案,我认为你运气不好 iOS绝对不允许程序性终止应用程序,更不用说程序性启动应用程序了 Android确实允许杀掉一个应用程序。虽然没有文件(我可以找到),但你可以使用 navigator.app.exitApp() 要杀死当前的应用程序 但是,您仍然无法通过编程重新启动它
我认为最好的办法是编写代码来重置变量和本地存储/DB(如果使用)。然后通过
document.location.href='index.html?var=xxx'重新加载索引页面代码>其中xxx=当前时间戳。将时间戳放在末尾将确保它提取页面的非缓存版本
*编辑:我的声明中没有添加苹果允许应用程序杀戮的内容,因为它本应如此。关于navigator.app.exitAPp()
和timestamp href的提示都很好。我刚刚收到通知,很多人正在读这篇文章,所以我想我会更新一下。终止应用程序会导致IOS出现问题,如果您使用的是后台活动的cordova插件,也会导致问题,因此我实际上最终编写了一个手动重置函数,该函数会执行并将所有变量设置回默认值。不理想或不美观,但功能良好。document.location.href='index.html';不在ios中工作
document.location.href = 'index.html';