@wuleiku347073/wl-ui
v1.1.6
Published
自定义滚动条插件
Downloads
65
Readme
Scroll
自定义滚动条插件
特性
- 通过配置项生成自定义样式的滚动条
- 支持拖拽滚动
- 基本不需要更改DOM布局,只需在overflow:scroll的元素上增加该指令即可
- 移动端中无效,会自动改回默认的滚动
- 封装了vue指令的形式
- 使用
ResizeObserver
监听盒子大小变化,已无需手动调用update
方法(^2.1.2)
原生使用
import CustomScrollBar from '@howdyjs/scroll'
const scroll = new CustomScrollBar({
el: '#scroll', // Selector or Dom
options: {
// Your Options
// 参考下方说明
}
});
scroll.init();
- UMD CDN: https://unpkg.com/@howdyjs/scroll/dist/index.umd.js
- UMD Name:
HowdyScroll
Options (Objcet)
|参数|说明|类型|可选值|默认值| |:---|:---|:---|:---|:---| |direction|滚动条方向|String|x/y/all|y| |scrollBarWidth|滚动条宽度(轨道)|Number|-|6| |scrollBarOffsetX|滚动条水平偏移(padding)|Number|-|0| |scrollBarOffsetY|滚动条垂直偏移(padding)|Number|-|0| |scrollBarThumbColor|滚动条滑块颜色|String|-|#aab| |scrollBarThumbBorderRadius|滚动条滑块是否需要圆角|Boolean|-|true| |scrollBarThumbBorderRadius|滚动条轨道颜色|String|-|transparent| |scrollBarThumbHoverColor|滚动条滑块Hover时的颜色(默认不设置)|String|-|-| |enableTrackClickScroll|是否允许点击轨道进行滚动|Boolean|-|true| |scrollSpeed|点击轨道时的滚动速度(滚动效果使用requestAnimationFrame实现,该值表示每帧的位移量,单位PX)|Number|-|20| |dragScroll|是否开启拖拽滚动|Boolean|-|false| |thumbShow|滚动条滑块显示方式,可选一直显示与Hover显示|String|always/hover|always| |observeAutoUpdate|自动更新滚动条,默认开启,若关闭则需要自行在盒子大小改变时手动调用更新方法|Boolean|-|true|
长度属性的单位为px
以Vue指令方式使用
import { ScrollDirective } from '@howdyjs/scroll'
// Vue3全局引入
app.use(ScrollDirective, someGlobalOptions)
// Vue2全局引入(对vue2做了兼容)
Vue.use(ScrollDirective, someGlobalOptions)
// 组件内引入
export default {
directive: {
scroll: ScrollDirective
}
}
指令Arg
- y(默认), 开启垂直滚动
- x, 开启水平滚动
- all, 同时开启垂直、水平滚动
v-scroll:y | v-scroll:x | v-scroll:all
指令Value (Objcet)
参数同上方的配置Options