10

我正在使用 jQuery mobile 开发应用程序,我试图将用户面板中的所有页面放入一个大文件中,并通过一个大的 .js 文件运行它。我不知道我是否可以用这种方式编写我的 .js 文件:

在加载用户面板时进行初始化

$(document).on('pageinit', function(){

});

如果我可以这样说,那么当某个页面将被 id 调用时:

$("#userpanel").on('pageshow', function(){

});

在每个页面的第一个这样的内部:

$(document).on('pageinit', function(){

    $("#userpanel").on('pageshow', function(){

    });

    $("#*********").on('pageshow', function(){

    });

    $("#*********").on('pageshow', function(){

    });

});

等等,这是它的工作原理还是我误解了 jQuery/JS 的基本概念?如果是,什么是好方法?

4

1 回答 1

3

首先不要将page events其用作其他页面事件的子项,这并不意味着那样工作。在这种情况下,所有这些pageshow事件将在没有其 parent 的情况下正常触发pageinit

这是一个工作jsFiddle示例。

要了解有关jQuery Mobile页面事件的更多信息,请查看这篇文章,为了更加透明,这是我的个人博客。或者可以在这里找到。

所以声明页面事件的正确方法是这样的:

$("#userpanel").on('pagebeforeshow', function(){

});

$("#userpanel").on('pageshow', function(){

});

$("#userpanel").on('pagebeforeshow', function(){

});

$("#userpanel").on('pageshow', function(){

});

$("#userpanel").on('pagebeforeshow', function(){

});

$("#userpanel").on('pageshow', function(){

});
于 2013-02-01T20:00:44.803 回答