高性能的纯Js滚动条美化插件smooth-scrollbar

简介: smooth-scrollbar是一款高性能的纯JavaScript滚动条美化插件。该滚动条为现代浏览器而制作,它具有高性能,自由配置,平滑滚动等特点,支持各种现代桌面浏览器和手机设备。

smooth-scrollbar是一款高性能的纯JavaScript滚动条美化插件。该滚动条为现代浏览器而制作,它具有高性能,自由配置,平滑滚动等特点,支持各种现代桌面浏览器和手机设备。

tx000713.png

在线演示 下载

安装
可以通过 npm 或 bower 来安装在该滚动条插件。

npm install smooth-scrollbar --save
bower install smooth-scrollbar --save

使用方法
使用该滚动条插件需要在页面中引入smooth-scrollbar.css和smooth-scrollbar.js文件。

<link rel="stylesheet" href="path/to/smooth-scrollbar.css">
<script src="path/to/smooth-scrollbar.js"></script>

HTML结构
你可以使用以下三种HTML结构来生成平滑滚动条。

1、将要滚动的内容包裹在元素中。

<scrollbar>
    ...
</scrollbar>

2、使用scrollbar属性。

<section scrollbar>
    ...
</section>

3、使用data属性。

<section data-scrollbar>
    ...
</section>

初始化插件
可以使用initAll()方法来初始化页面中所有的滚动条。

Scrollbar.initAll(options);

或者通过Scrollbar.init(elem, options)方法来初始化指定的滚动条。

滚动条在初始化之后,会生成下面的HTML结构:

<scrollbar>
    <article class="scroll-content">
        your contents here...
    </article>
    <aside class="scrollbar-track scrollbar-track-x">
        <div class="scrollbar-thumb scrollbar-thumb-x"></div>
    </aside>
    <aside class="scrollbar-track scrollbar-track-y">
        <div class="scrollbar-thumb scrollbar-thumb-y"></div>
    </aside>
</scrollbar>

配置参数
slinky多级导航菜单插件的配置参数如下:




参数
类型
默认值
描述




speed
Number
1
滚动条的滚动速度


friction
Number
10
滚动的摩擦系数,是一个1-100之间的百分比数


thumbMinSize
Number
20
滚动条的最小尺寸


renderByPixels
Boolean
true
使用整数像素来渲染滚动条,设置为true可以提高性能


continuousScrolling
Boolean|String
'auto'
在当前滚动条滚动到底部时是否让它上面的可滚动内容继续滚动。


overscrollEffect
Boolean|String
false
超出滚动范围时的效果。'bounce'为iOS样式的弹性效果,'glow'为Android 样式的发光效果。使用该选项会对性能有所影响。


overscrollEffectColor
String
'#87ceeb'
'glow'效果的颜色


方法API

  • Scrollbar.init( element, [options] ):初始化指定的滚动条,返回scrollbar实例。
  • Scrollbar.initAll( [options] ):初始化所有的滚动条,返回一个数组。
  • Scrollbar.has( element ):检测指定的元素是否有滚动条。
  • Scrollbar.get( element ):获取指定的滚动条,如果没有返回undefined。
  • Scrollbar.getAll():返回包含所有滚动条实例的数组。
  • Scrollbar.destroy( element ):移除指定元素上的滚动条。
  • Scrollbar.destroyAll():销毁所有的滚动条实例。

浏览器兼容

  • IE 10+
  • Chrome 22+
  • Firefox 16+
  • Safari 8+
  • Android Browser 4+
  • Chrome for Android 32+
  • iOS Safari 7+
相关文章
|
7月前
|
资源调度 前端开发 CDN
纯css动画库animate.css的用法
纯css动画库animate.css的用法
151 0
|
7天前
|
JavaScript 前端开发 容器
jQuery多功能滑块插件r-slider.js
r-slider.js是一款jQuery多功能滑块插件。使用该插件,可以制作出滑块、开关按钮、进度条、向导步骤等多种效果。
26 5
|
13天前
|
Web App开发 JavaScript iOS开发
基于jquery开源的页面内模拟滚动条特效插件scrollbar
abcrollBar是一个基于jquery运行的开源滚动条特效插件,体积小巧使用简单的滚动条小插件,它可以通过鼠标中轴滑动页面内的模拟滚动条,或鼠标拖动滚动条查看滚动框架里的内容。支持自定义滚动条的样式,滚动条可选择横或竖呈现,默认也可选择显示或隐藏滚动条。
20 0
|
2月前
|
前端开发 JavaScript
uniapp纯CSS实现圆形进度条组件
uniapp纯CSS实现圆形进度条组件
100 0
touchslider.js插件高度自适应的解决方案
touchslider.js插件高度自适应的解决方案
59 0
|
Web App开发 前端开发 JavaScript
|
前端开发
前端封装库/工具库的动画之Animate.css
在现代前端开发中,动画是一个非常重要的组成部分。其中,Animate.css 是一个备受欢迎的 CSS 动画库。
174 1
使用 sass + rem + flexible.js 实现大屏自适应
使用 sass + rem + flexible.js 实现大屏自适应
204 0
使用 sass + rem + flexible.js 实现大屏自适应
|
前端开发
css:scroll-behavior:smooth让页面平滑滚动
css:scroll-behavior:smooth让页面平滑滚动
115 0
|
Web App开发 移动开发 HTML5
实现一个美化原生拖拽的draggable-polyfill
实现一个美化原生拖拽的draggable-polyfill
实现一个美化原生拖拽的draggable-polyfill