jQuery Mobile 互动版

page

jQuery Mobile 中与页面打交道的事件被分为四类:

Page Initialization - 在页面创建前,当页面创建时,以及在页面初始化之后;
Page Load/Unload - 当外部页面加载时、卸载时或遭遇失败时;
Page Transition - 在页面过渡之前和之后;
Page Change - 当页面被更改,或遭遇失败时。

jQuery Mobile 中的页面进行初始化时,它会经历三个阶段:在页面创建前、页面创建、页面初始化。而我们在每个阶段触发的事件都可用于插入或操作代码。

在页面创建前使用"pagebeforecreate"事件,页面创建使用"pagecreate"、页面初始化使用"pageinit"。

$(document).on("pagebeforecreate",function(event){
  alert("pagebeforecreate 事件触发!");
}); 
$(document).on("pagecreate",function(event){
  alert("pagecreate 事件触发!");
});

无论外部页面何时载入 DOM,将触发两个事件。第一个是 pagebeforeload,第二个是 pageload (成功)或 pageloadfailed(失败)。

$(document).on("pageload",function(event,data){
  alert("触发 pageload 事件!\nURL: " + data.url);
});
$(document).on("pageloadfailed",function(event,data){
  alert(";抱歉,被请求页面不存在。");
});

jQuery Mobile 还为我们提供了四个页面过渡事件pagebeforeshow、pageshow、pagebeforehide、pagehide

$(document).on("pagebeforeshow","#pagetwo",function(){ //当进入页面二时 
  alert("页面二即将显示");
});
$(document).on("pageshow","#pagetwo",function(){ // 当进入页面二时
  alert("现在显示页面二");
});
$(document).on("pagebeforehide","#pagetwo",function(){ // 当进入页面二时
  alert("页面二即将隐藏");
});
$(document).on("pagehide","#pagetwo",function(){ // When leaving pagetwo
  alert("现在隐藏页面二");
});
练习一下以上事件吧