Javascript JQuery移动懒散负载问题

Javascript JQuery移动懒散负载问题,javascript,jquery-mobile,lazy-loading,Javascript,Jquery Mobile,Lazy Loading,因此,我在一个jQuery页面上对ListView进行延迟加载。当您单击ListItem时,它会将您带到详细信息页面。问题是,因为我已经将scrollstop事件绑定到窗口,所以延迟加载仍然试图在details页面上触发 $("#index").on("pageshow", function () { //get initial list view data var inital = $('#filters').serialize(); //gets 'filter' params f

因此,我在一个jQuery页面上对ListView进行延迟加载。当您单击ListItem时,它会将您带到详细信息页面。问题是,因为我已经将scrollstop事件绑定到窗口,所以延迟加载仍然试图在details页面上触发

$("#index").on("pageshow", function () {
  //get initial list view data

  var inital = $('#filters').serialize(); //gets 'filter' params for data-access
  RetrieveMeetings(inital);  //Populate initial set

  //lazy load
  //Window Event From: http://stackoverflow.com/questions/9983835/detect-if-user-has-scrolled-to-the-bottom-of-a-div
  $(window).bind('scrollstop', function () { //this also fires on details page!!!
    var screenBottom = $(this).scrollTop() + parseInt($(window).height());
    var $div = $('#meetings-list');
    var divBottom = $div.offset().top + parseInt($div.height());

    if (screenBottom > divBottom) {
       var values = $('#filters').serialize();
       LoadMoreMeetings(values);
    }
  });

  //new dataset from filter forum
  $("#submit").click(function (event) {

    /* stop form from submitting normally */
    event.preventDefault();
    var values = $('#filters').serialize();
    ResetMeetingList();
    RetrieveMeetings();

  });

});
我可以通过在pagehide事件中将页面从DOM中删除来解决这个问题,但是我会丢失过滤器论坛的页面状态,这样每当用户返回ListView时,它也会增加页面加载时间

    //remove pages from DOM on hide
    $(document).on("pagehide", function (e) {
        $(e.target).remove();
    });
是否有方法将scrollstop事件附加到页面而不是窗口

这种方法的另一个问题是,如果屏幕足够大,可以在没有滚动条的情况下加载页面,那么惰性加载显然不会启动!也许有更好的整体解决方案来解决这个问题