[英]jQuery-Mobile pagecontainerbeforechange does not fire
[英]jquery/jquery-mobile - how to fire a function once per element, with elements being added to DOM
我需要在某些觸發器元素上觸發插件。
我正在使用這個:
$( ':jqmData(role="page"):jqmData(trig="true")' ).live( 'pagebeforeshow',function(e){
console.log("detected");
// stuff to do...
});
由於這是我的背景頁面(DOM中的第一個),用活火它在每一個過渡, 一個更換現場只觸發它最初的觸發因素上,而不是在被拉到第二個元素。
問題:如何設置一個功能“對觸發元素有效,但每個發現的觸發元素僅運行一次”? 設置數據標志會有所幫助嗎?
感謝您的信息!
設置一個變量,用於存儲觸發器是否已處理。 使用此變量作為條件觸發器,以確保它僅運行一次。 當您知道觸發器可以再次運行時,將其重置。
我的難題是您必須使用.live()
,因為最初在DOM中只有1個匹配元素,而不是它們如何排序? 否則, .one()
應該可以正常工作。 手冊中有一個很好的示例,說明了如何使用.bind()
實現.one()
,這是使用.live()
,它應該可以解決這個問題:
function preparePage(e) {
$(this).die('pagebeforeshow', preparePage);
console.log("detected");
// stuff to do...
}
$(':jqmData(role="page"):jqmData(trig="true")').live('pagebeforeshow', preparePage);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.