onscroll、scrollTop、window.scrollTo

1,832 阅读1分钟

onscroll

  • 解释:当元素的滚动条滚动时触发的事件。
  • 用法即:element.onscroll=function(){};

需要注意的是,滚动条一定要出现,而且滚动条是属于这元素的,例如:

<div id="wrap" style="height:100px;overflow:auto;">
    <div id="inner" style="height:200px;">content</div>
</div>

因为外层wrap的高度小于内层inner的高度,所以当设置overflow:auto时会出现滚动条,当拖动滚动条时就会触发wrap的onscroll事件,而不是inner的onscroll事件,即这滚动条属于wrap而不是属于inner,明白这点十分重要

scrollTop

  • 解释:元素滚动条内的顶部隐藏部分的高度。
  • scrollTop只有DOM元素才有,window/document没有。

用法1:获取值 var top = element.scrollTop;//返回数字,单位像素

用法2:设置值 element.scrollTop = 200;

兼容性问题:获得整个文档scrollTop,IE是document.documentElement.scrollTop,FF/CH则是document.body.scrollTop.

window.scrollTo(x,y)