捕获特定jQuery Mobile页面上的滚动事件

时间:2013-11-28 23:00:11

标签: javascript jquery 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');
});

未捕获滚动事件。我怎么能抓住它?

如果我把窗口放在&#39;而不是#pg_remote-address-book&#39;然后它正在工作。但我想在特定页面上捕获滚动事件。你能帮帮我吗?

1 个答案:

答案 0 :(得分: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