scroll
事件允许对页面或元素滚动做出反应。我们可以在此处执行一些非常好的操作。
例如
- 根据用户在文档中的位置显示/隐藏其他控件或信息。
- 当用户向下滚动到页面末尾时加载更多数据。
这是一个显示当前滚动位置的小函数
window.addEventListener('scroll', function() {
document.getElementById('showScroll').innerHTML = window.pageYOffset + 'px';
});
在行动
当前滚动 = 滚动窗口
scroll
事件在 window
和可滚动元素上均可使用。
防止滚动
我们如何使某些内容不可滚动?
我们无法通过在 onscroll
侦听器中使用 event.preventDefault()
来防止滚动,因为它在滚动已经发生后触发。
但是,我们可以在导致滚动的事件(例如 pageUp 和 pageDown 的 keydown
事件)上通过 event.preventDefault()
来防止滚动。
如果我们向这些事件添加事件处理程序并在其中使用 event.preventDefault()
,那么滚动将不会开始。
有许多方法可以启动滚动,因此使用 CSS 的 overflow
属性更可靠。
以下是一些你可以解决或查看以了解 onscroll
应用的任务。
评论
<code>
标记,对于多行 - 将其包装在<pre>
标记中,对于 10 行以上 - 使用沙箱 (plnkr、jsbin、codepen…)