JQuery Mobile如何在pageinit上只运行一次脚本

时间:2011-12-16 09:31:47

标签: jquery jquery-mobile document-ready page-init

我遇到了jquery mobile和嵌套列表的问题。当我第一次加载页面时,它看起来很棒,但是当我在jquery移动列表中导航时,它不会运行脚本,因为它位于document.ready()

我找到了一个使用

的解决方案
$('[data-role="page"]').live('pageinit', function (event) {
}

然后脚本运行了6次,因为我在网站上有6个data-role =“page”。如何在“pageinit”上设置仅运行一次脚本。

我正在尝试操作页面,因此我不想只选择第一个/只运行一次代码。

1 个答案:

答案 0 :(得分:1)

不确定这是不是你的问题,但这是我的问题。两件事情。首先,确保您不会不小心多次引用jQuery Mobile javascript文件。这会导致糟糕的事情发生。其次,您可能希望将其添加到第一页:

$(document).bind("mobileinit", function () {
    // As of Beta 2, jQuery Mobile's Ajax navigation does not work in all cases (e.g.,
    // when navigating from a mobile to a non-mobile page), hence disabling it.
    $.mobile.ajaxEnabled = false;
});

然后你会想要使用:

$("#pageName").bind("pageinit", function (event) {
   // Start code here
});