我有my code,我无法理解如何检测滚动结束(当它到达元素的底部时)。
document.getElementById('list').addEventListener('wheel', function () {
function load() {
var fragment = document.createDocumentFragment();
for (var i = 0; i < 10; i++) {
var p = document.createElement('p');
p.appendChild(document.createTextNode(i));
fragment.appendChild(p);
}
return fragment;
}
// if ( scroll end ) { load new content
this.appendChild(load());
//}
}, false);
此任务是否有最佳实践/算法?
答案 0 :(得分:0)
好的,我现在得到了你想要达到的目标......
基本上,有两个属性.scrollHeight
是可滚动元素中内容的高度,.scrollTop
返回可滚动内容的当前滚动位置。
当您滚动到可滚动元素的末尾时,其scrolltop + height将等于其scrollheight,因此您的条件应如下所示:
var myList = document.getElementById('list');
if (myList.scrollTop + myList.offsetHeight == myList.scrollHeight) {
this.appendChild(load());
}
这是你的 Fixed Fiddle