我们正在制作一个带有近15个模块并使用jQuery mobile的phonegap移动企业应用程序(大量信息捕获和显示)。我们基本上希望从具有后退和下一个功能的说明Page1到page2导航到page3然后提交在第3页。现在,当我从page1导航到page2再到page3然后返回时,我希望我的所有数据都在控件中维护,如何实现这一目标?我并不期待将所有div(页面)放在一个页面中,因为它变得非常拥挤,尽管我们使用单页面实现技术。
当我说要维护的数据时,我的意思是,无论在第1页中填写的数据是什么,只要在导航第2页和第3页之后回到页面,即填写Page1 next - >填写page2 next->填写第3页 - >第2页(保留数据)返回>第1页(保留数据)
答案 0 :(得分:0)
如果您的意思是保留页面的状态,并且不想将其保留在DOM中。我建议你Backbone。该框架允许您将元素存储在单独的View对象中。你可以从DOM中自由地销毁它,然后把它扔进去 - 用它的所有“数据”:) - 随时随地。
jQuery Mobile和Backbone确实发生了冲突。它们在导航机制上重叠,JQM是基于标记的,Backbone是以编程方式。但你可以轻松解决这个问题。我更喜欢使用Backbone来完成这种工作。以下是禁用JQM导航的方法:
$(document).bind("mobileinit", function() {
$.mobile.ajaxEnabled = false;
$.mobile.linkBindingEnabled = false;
$.mobile.hashListeningEnabled = false;
$.mobile.pushStateEnabled = false;
});
$('div[data-role="page"]').live('pagehide', function(event, ui) {
return $(event.currentTarget).remove();
});
我从Christophe Coenraets偷了这个:P
其余的,如何使用Backbone进行页面导航......,您应该阅读Backbone Documents
您可以将JQM用作UI框架。 Backbone作为MV *框架。如果你还不知道如何使用Backbone,你应该学习它。值得你的时间:))