【问题标题】:Change Page does not work in jquery mobile ios and phonegap更改页面在 jquery mobile ios 和 phonegap 中不起作用
【发布时间】:2013-07-17 12:29:16
【问题描述】:

我正在解释我正在开发的应用程序目前面临的以下情况。

应用程序包含登录模块,该模块将数据存储到应用程序本地存储中。 现在,当我启动应用程序时,它会检查本地存储中的密钥并相应地调用应用程序中的更改页面。

如果我清除本地存储并重新启动应用程序,那么所有转换都可以完美运行。但是,如果应用程序本地存储中已经存在数据并且应用程序启动,它会将我带到定义的主屏幕。

我在那里有一个 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);

【问题讨论】:

  • 一点点代码不会有什么坏处。
  • @Gajotres 我已经添加了注销的示例代码
  • @CodemasterGabriel 这是包含多个<div data-role="page"> 的多页模板吗?为什么不$.mobile.changePage($("#home"));
  • @CodemasterGabriel 我遇到了一个我之前看到的一个答案,PhoneGap 开发人员谈到了 jQM - stackoverflow.com/questions/12581872/… 另外这里有一篇关于 jQM 和 PhoneGap 弊端的好读物 - apachecordova.blogspot.com/2012/11/…跨度>
  • 我找到了解决方案。将发布相同的答案。

标签: ios jquery-mobile cordova


【解决方案1】:

我终于可以解决问题了。

据了解,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/

【讨论】:

  • 这两行是一样的吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-14
  • 2013-08-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多