jQuery Mobile 页面事件

jQuery Mobile 页面事件

Ang mga pangyayaring nakikipag-ugnayan sa pahina sa jQuery Mobile ay hinahati sa apat na klase:

  • Page Initialization - Bago naitayo ang pahina, kapag naitayo ang pahina, at pagkatapos ng paglulunsad ng pahina
  • Page Load/Unload - Kapag ang panlabas na pahina ay naglaladlad, nagpapalabas o nagkamali
  • Page Transition - Bago at pagkatapos ng paglilipat ng pahina
  • Page Change - Kapag ang pahina ay nabagong o nagkamali

Para sa kumpletong impormasyon tungkol sa lahat ng jQuery Mobile events, mangyaring bisitahin ang aming jQuery Mobile Event Reference Manual.

jQuery Mobile Initialization Event

Kapag ang isang tipikal na pahina ng jQuery Mobile ay nagsisimula sa paglulunsad, ito ay magdaraang sa tatlong yugto:

  • Bago naitayo ang pahina
  • Paglulunsad ng pahina
  • Paglulunsad ng pahina

Ang bawat pangyayaring itinutulak sa bawat yugto ay magagamit para sa pagdagdag o paggamit ng kodigo.

事件 描述
pagebeforecreate Kapag ang pahina ay aalala sa paglulunsad, at bago nagsimula ang pagpapatibay ng pahina ng jQuery Mobile, itatakdang pangyayari ito.
pagecreate Kapag ang pahina ay naitayo, ngunit bago matapos ang pagpapatibay, itatakdang pangyayari ito.
pageinit 当页面已初始化,并且在 jQuery Mobile 已完成页面增强之后,触发该事件。

下面的例子演示在 jQuery Mobile 中创建页面时,何时触发每种事件:

实例

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

亲自试一试

jQuery Mobile Load 事件

页面加载事件属于外部页面。

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

下表中解释了这些事件:

事件 描述
pagebeforeload 在任何页面加载请求作出之前触发。
pageload 在页面已成功加载并插入 DOM 后触发。
pageloadfailed 如果页面加载请求失败,则触发该事件。默认地,将显示 "Error Loading Page" 消息。

下列演示 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(){ // 当离开页面二时
  alert("现在隐藏页面二");
});

亲自试一试