我目前正在开发基于 jQuery Mobile 的应用程序。我们选择它是因为在那一刻它看起来如此闪亮和美味,但随着我的工作越多,我就越会陷入多种事情。
我分别创建了所有页面并且它们工作正常,但是在将它们相互链接后,我开始遇到一些困难。
对于每个页面,我需要加载不同的脚本和 3rd 方库,经过一些研究后,我想出了为 data-role="page" 添加 id 并使用 .delegate() 加载它们,但这给我带来了麻烦,所以问:
1)当你移动到另一个页面时,如何取消绑定/杀死/清除/删除所有加载的脚本?
问题是,当我要转到“第 2 页”并执行以下操作时:
$(document).delegate('#page-2', 'pageinit', function() {
...do something
});
转到“第 1 页”或“第 3 页”后,使用 #page-2 .deligate() 加载的内容仍保留在 DOM 中并与其他页面上的脚本发生冲突。
PS 凌乱但整个文件可以在这里看到 - http://cloud.ignatynikulin.com/011R3x2k401i271N420N
PPS 另一个问题的快速更新:
为什么如果条件在 .deligate() pageInit 中不起作用以及如何使其起作用?
谢谢