我正在使用 jQuery Mobile 开发应用程序,我试图将用户面板中的所有页面放入一个大文件并通过一个大 .js 文件运行它。我不知道我是否可以用这种方式编写我的 .js 文件:
加载用户面板时初始化
$(document).on('pageinit', function(){
});
如果我可以把这个放在某个页面上,那么当某个页面将被调用时:
$("#userpanel").on('pageshow', function(){
});
在每个页面的第一个这样的页面中:
$(document).on('pageinit', function(){
$("#userpanel").on('pageshow', function(){
});
$("#*********").on('pageshow', function(){
});
$("#*********").on('pageshow', function(){
});
});
等等,这是它的工作原理还是我误解了 jQuery/JS 的基本概念?如果是,有什么好的方法吗?
最佳答案
首先,不要将 page events
用作其他页面事件的子项,它们不应该那样工作。在这种情况下,所有这些 pageshow
事件将在没有其父 pageinit
的情况下正常触发。
Here's 一个有效的 jsFiddle
示例。
要了解有关 jQuery Mobile
页面事件的更多信息,请查看此 ARTICLE ,更透明的是我的个人博客。或者可以找到 HERE 强>。
声明页面事件的正确方法应该是这样的:
$("#userpanel").on('pagebeforeshow', function(){
});
$("#userpanel").on('pageshow', function(){
});
$("#userpanel").on('pagebeforeshow', function(){
});
$("#userpanel").on('pageshow', function(){
});
$("#userpanel").on('pagebeforeshow', function(){
});
$("#userpanel").on('pageshow', function(){
});
关于javascript - jQuery page on/live/bind pageinit, pageshow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14652145/