又是一个模拟滚动条,鉴于之前写过一个(点击这里查看),总感觉不是很完美,也没有耐心去完善他,于是重新写了一个,代码量更少,压缩后仅2K。先看下使用方法。
DOM结构如下,分两层,外面包裹一层,里面一层也不需要去设置定位,只需要设置 overflow:auto 即可。
<div class="wrap"> <div class="content"> //内容 </div> </div>01.
02.
03.
04.
05.
JS调用:
//传入元素的id或者class var s = new Scroll('.scrollWrap'); s.top(function(){ //达到顶部执行 }); s.bottom(function(){ //达到底部执行 }); s.resize(); //用于添加内容或者自适应的时候,重新计算滚动条高度01.
02.
03.
04.
05.
06.
07.
08.
09.
看个例子:
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
如果你通过F12看了上面的例子,你会发现,中间的内容滚动,并不是通过JS去修改 top 值。其实是通过css的 overflow:auto 显示默认的滚动条,然后不管你用什么:left、margin、padding都可以,只要把滚动条抵出去就行。或者用虚拟的滚动条遮盖起来也可以。具体看下面的例子就明白了:
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
另外的3个接口的使用方法:
点击按钮来动态添加内容
再来举个无限追加的例子:
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
指定滑动到多少:
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
注意:只兼容到IE8,如果需要向下兼容,请自行下载源码修改。