只在一个特定页面上使用脚本

时间:2012-07-09 18:20:18

标签: javascript jquery jquery-mobile

我正在使用jQuery mobile开发应用程序。我有一个脚本,我想在用户进入页面后启动,并在他们离开后停止。

我用过:

$( document ).delegate("#myPage", "pagecreate", "", function() {
    //my script here
});

只有在用户输入“myPage”后才能运行脚本。如何让脚本在离开“myPage”后停止?

编辑:我正在使用基于Ajax的导航,因此它只是一个HTML文件。当有人进入新的子页面时,我试图启动和停止脚本(#page)。

1 个答案:

答案 0 :(得分:3)

您可以将pageshowpagehide事件用于特定的伪页面。像这样:

$( document ).delegate("#myPage", "pageshow", function() {
    //start your code
}).delegate("#myPage", "pagehide", function() {
    //end your code
});

以下是jQuery Mobile Events的文档,有关于页面事件的整个部分:http://jquerymobile.com/demos/1.1.0/docs/api/events.html

使用pageshow / pagehide的优点是代码也会在伪页面的后续视图上运行,而不仅仅是在第一次页面加载时。