滚动事件无法在移动设备上运行

时间:2017-06-25 08:28:02

标签: javascript jquery

Setch.me通常在桌面上加载而不是在移动设备上加载,除非我点击摄影师/化妆师,我在这里搜索解决方案之后添加了height =设备高度但是没有工作。

$(window).scroll(function() { 
    if($(window).scrollTop() + $(window).height() >= $(document).height()) { 
        track_page++; 
        load_contents(track_page); 
    }

5 个答案:

答案 0 :(得分:12)

试试这个:

$(document.body).on('touchmove', onScroll); // for mobile
$(window).on('scroll', onScroll); 

// callback
function onScroll(){ 
    if( $(window).scrollTop() + window.innerHeight >= document.body.scrollHeight ) { 
        track_page++; 
        load_contents(track_page); 
    }
}

答案 1 :(得分:2)

var addition_constant = 0;
$(document.body).on('touchmove', onScroll); // for mobile
$(window).on('scroll', onScroll);

function onScroll() {
  var addition = ($(window).scrollTop() + window.innerHeight);

  var scrollHeight = (document.body.scrollHeight - 1);
  if (addition > scrollHeight && addition_constant < addition) {

    addition_constant = addition;

    loadmorecontest();
  }
}

答案 2 :(得分:0)

嗨,你没有正确关闭你的活动,这应该是这样的:

$(window).scroll(function() { 
if($(window).scrollTop() + $(window).height() >= $(document).height()) { 
    track_page++; 
    load_contents(track_page); 
}});

答案 3 :(得分:0)

只需将其与文档绑定:

尝试一下:

$(document).on('scroll', function() {
   // your code
});

$(document).scroll(function() {
   // your code
});

答案 4 :(得分:0)

除了之前的评论,$(window).scrollTop() 似乎不适用于移动设备,应替换为 document.body.scrollTop

相关问题