我正在解释下面的情况,目前我正在面对我正在处理的应用程序。
该应用程序由Login模块组成,该模块将数据存储到应用程序本地存储。 现在,当我启动应用程序时,它会检查本地存储中的密钥,并相应地调用应用程序中的更改页面。
如果我清除本地存储并重新启动应用程序,那么所有转换都是完美的。但是,如果应用程序本地存储和应用程序中已存在数据,则会将我带到定义的主屏幕。
我那边有一个jquery listview。现在当我在后面的场景中调用changePage时没有任何反应,即当我登陆主页时。但是在第一个场景中,当我从登录屏幕开始时一切正常。
以下是注销的代码
localStorage.removeItem("userdata");
localStorage.removeItem("default_data");
$("#block-ui").show();
$.mobile.loading('show');
setTimeout(function(){
$.mobile.loading('hide');
$("#block-ui").hide();
$.mobile.changePage("index.html",{allowSamePageTransition:true,reloadPage:true,changeHash:false,transition:"slide"});
},2500);
答案 0 :(得分:3)
最后我能够解决问题。
根据理解,jquery mobile将index.html加载为初始页面,并使用ajax将其他html页面加载到应用程序中。因此,基本级别永远不会从index.html更改为任何其他页面。
现在问题是由于以下语法
$.mobile.changePage("home.html",{allowSamePageTransition:true,reloadPage:true,changeHash:true,transition:"slide"});
我刚将其更改为以下内容:
$.mobile.changePage("home.html",{allowSamePageTransition:true,reloadPage:false,changeHash:true,transition:"slide"});
它开始起作用了。
无论如何,谢谢你的帮助。此外,您可以查看以下链接,以更好地了解陷阱并相应地处理它们:http://rip747.wordpress.com/2012/04/19/pitfalls-with-jquery-mobile-and-how-to-over-come-them/