所以基本上我的问题看似简单.
您可以在http://furnace.howcode.com上看到它的运行情况(请注意,数据是通过Ajax返回的,所以如果没有任何反应,请给它一些时间!).
什么是有意义的,当你到达滚动的底部时,在第二列,返回接下来的5个结果.
但实际发生的是当你点击滚动区域的TOP时它只返回5个结果.试一试:向下滚动,没有任何反应.向上滚动到顶部,返回结果.
出了什么问题?
这是我正在使用的代码:
$('#col2').scroll(function(){
if ($('#col2').scrollTop() == $('#col2').height() - $('#col2').height()){
loadMore();
}
});
Run Code Online (Sandbox Code Playgroud)
loadMore(); 是获取数据并附加数据的函数.
那么这里出了什么问题?谢谢你的帮助!
Pan*_*agi 24
以下测试,并正常工作:
$(window).scroll(function() {
if ($(window).scrollTop() == $(document).height() - $(window).height()) {
loadMore();
}
});
Run Code Online (Sandbox Code Playgroud)
mun*_*nch 13
这在过去对我有用.
var col = $('#col2');
col.scroll(function(){
if (col.outerHeight() == (col.get(0).scrollHeight - col.scrollTop()))
loadMore();
});
Run Code Online (Sandbox Code Playgroud)
这也是一个很好的解释.
jor*_*ens 11
如果滚动条位置等于列的高度减去列的高度(等于零),那么你的数学是错误的.这就是为什么你loadMore()的名字在你的col的顶部.
尝试:
$('#col2').scroll(function(){
if ($('#col2').scrollTop() == $('#col2').height()){
loadMore();
}
});
Run Code Online (Sandbox Code Playgroud)