2013-11-28 69 views
5

如何捕獲特定jQuery Mobile頁面上的滾動事件?捕獲特定jQuery Mobile頁面上的滾動事件如何捕獲特定jQuery Mobile頁面上的滾動事件?

<div id='pg_remote-address-book' data-role='page'> 
    <div data-role='content' id='pg_remote-address-book_content'> 
    <ul data-role='listview' id='ul_address_list'> 
    </ul> 
    </div> 
</div> 

在pagebeforecreate,動態加載的無序列表中的項目

for (var i = 0; i < 100; i++) { 
    $("#ul_address_list").append("<li>"+i+"</li>"); 
} 

捕捉滾動

$('#pg_remote-address-book').scroll(function() { 
    console.log('scrolled'); 
}); 

的滾動事件沒有被捕獲。我怎樣才能捕捉到它?

如果我把'窗口',而不是'#pg_remote-address-book',那麼它正在工作。但我想捕獲特定頁面上的滾動事件。你能幫我解決這個問題嗎?

+0

動態生成#pg_remote地址簿? 是的,那麼也許你應該把事件升級到另一個div,並將處理程序附加到這個處理程序。 –

+0

@ fos.alex,不,pg_remote-address-book不是動態生成的。這在index.html中可用 – Malaiselvan

回答

2

收聽scrollstartscrollstop事件,並使用.on綁定事件。

$(document).on("scrollstart", function (e) { 
    var active = $.mobile.activePage[0].id; 
    if (active == "pg_remote-address-book") { 
    // Do something 
    } else { 
    // Do something else 
    } 
}); 

Demo