【问题标题】:Detecting the end of wheel event JavaScript without jQuery在没有 jQuery 的情况下检测车轮事件 JavaScript 的结束
【发布时间】:2014-07-03 16:55:43
【问题描述】:

我有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);

此任务是否有任何最佳实践/算法?

【问题讨论】:

标签: javascript html


【解决方案1】:

好的,我现在得到你想要实现的目标......

所以基本上,有两个属性.scrollHeight 是可滚动元素中内容的高度,.scrollTop 返回可滚动内容的当前滚动位置。

当您滚动到可滚动元素的末尾时,其滚动顶部 + 高度将等于其滚动高度,因此您的条件应如下所示:

var myList = document.getElementById('list');
if (myList.scrollTop + myList.offsetHeight == myList.scrollHeight) {
    this.appendChild(load());
}

这是你的Fixed Fiddle

【讨论】:

    猜你喜欢
    • 2012-02-07
    • 2011-10-26
    • 2013-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多