npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

virtualscroll

v1.0.7

Published

A lightweight custom virtual scrollbar plug-in

Downloads

4

Readme

VirtualScroll (虚拟滚动条)

A lightweight custom virtual scrollbar plug-in

一个轻量级的自定义虚拟滚动条, 可以使一个DIV瞬间变身滚动窗口,而且支持个性化配置,可以打造与现有UI统一的分格

注意:不支持 IE9 及以下版本浏览器

示例

请下载这个库,然后打开 examples 文件夹,运行 index.html 查看全部示例

很好很强大,值得拥有!

如需修复bug或增强功能 ,请联系 : [email protected]

安装方法

npm install virtualscroll --save

推荐使用方法

方法一
const vs = require('virtualscroll ');
let boxa = document.querySelector('.boxa');
vs(boxa, {
    // 其它配置项
});
方法二
import vs from 'virtualscroll';
let boxa = document.querySelector('.boxa');
vs(boxa, {
    // 其它配置项
});

非构建环境,请直接在页面引入 "node_modules/VirtualScroll/build/VirtualScroll.js"

<script src="node_modules/VirtualScroll/build/VirtualScroll.js"></script>
let boxa = document.querySelector('.boxa');
 VirtualScroll(boxa, {
                WheelStep: 50,
                VSwidth: 8,
                HSheight: 8,
                VScursor: 'pointer',
                VBbgColor: 'rgba(255,255,255, 0)',
                VSradius: '4px',
                // 其它配置项...
            });

参数一:传入一个dom 单对象 (必选参数)

参数二:配置项Obj (可省略的参数,省略以后将使用默认配置项)

返回值:实例对象Object (可以用这个对象调用 public 方法和成员变量)

默认配置项
{
        CurrentPosition: [0, 0], // 滑块的当前位置。默认:[0,0], 第1个元素表示水平滚动滑块滑动距离的百分比, 第2个元素表示垂直滚动滑块滑动距离的百分比, 取值 0 - 1,表示百分比
        VBwidth: 16, // 垂直滚动条的宽度 默认 16px
        HBheight: 16, // 水平滚动条的高度 默认 16px
        VSwidth: 16, // 垂直滑块的宽度 默认 16px
        HSheight: 16, // 水平滑块的高度 默认 16px
        VBborder: 'none', // 垂直滚动条的边线 例如: "1px solid #000" 或 "1px solid rgba(255,0,0,.5)"
        HBborder: 'none', // 水平滚动条的边线 例如: "1px solid #000" 或 "1px solid rgba(255,0,0,.5)"
        VSborder: 'none', // 垂直滑块的边线 例如: "1px solid #000" 或 "1px solid rgba(255,0,0,.5)"
        HSborder: 'none', // 水平滑块的边线 例如: "1px solid #000" 或 "1px solid rgba(255,0,0,.5)"
        VBbgColor: '#f0f0f0', // 垂直滚动条的背景颜色(透明度请用RGBA)
        HBbgColor: '#f0f0f0', // 水平滚动条的背景颜色(透明度请用RGBA)
        VSbgColor: '#cdcdcd', // 垂直滚动滑块的背景颜色(透明度请用RGBA)
        VSoverColor: '#ababab', // 垂直滚动滑块鼠标经过的颜色(透明度请用RGBA)
        VSclickColor: '#606060', // 垂直滚动滑块鼠标点击的颜色(透明度请用RGBA)
        HSbgColor: '#cdcdcd', // 水平滚动滑块的背景颜色(透明度请用RGBA)
        HSoverColor: '#ababab', // 水平滚动滑块鼠标经过的颜色(透明度请用RGBA)
        HSclickColor: '#606060', // 水平滚动滑块鼠标点击的颜色(透明度请用RGBA)
        VBradius: '0', // 垂直滚动条圆角 可以输入一个字符串 '4px' 或 '2em 1em 4em / 0.5em 3em' 或 '4px 4px'
        VSradius: '0', // 垂直滚动滑块圆角 可以输入一个字符串 '4px' 或 '2em 1em 4em / 0.5em 3em' 或 '4px 4px'
        HBradius: '0', // 水平滚动条圆角 可以输入一个字符串 '4px' 或 '2em 1em 4em / 0.5em 3em' 或 '4px 4px'
        HSradius: '0', // 水平滚动滑块圆角 可以输入一个字符串 '4px' 或 '2em 1em 4em / 0.5em 3em' 或 '4px 4px'
        VScursor: 'default', // 鼠标移动到垂直滚动滑块上的形状,默认是 default
        HScursor: 'default', // 鼠标移动到水平滚动滑块上的形状,默认是 default
        WheelNeed: true, // 是否需要滚轮滚动,默认是 true , 如果不需要,设置为 false
        WheelStep: 80, // 滚轮滚动时单步滑动的距离 单位是 px (也包括鼠标点击滚动条时的单步滑动距离)
        WheelBubble: true, // 当滚轮滚动到底或顶时,是否将事件冒泡到 document , 设置 false 表示不冒泡到 document , true 表示冒泡到 document
        AutoShow: false, // 鼠标移入时显示移出时隐藏滚动条,true 表示响应鼠标移入移出, false 表示不响应鼠标移入移出
        TransitionDuration: '.2s', // 动画的执行时间(影响滚动条的颜色切换时间,影响滑块的透明度切换时间)
        beforeCreate () {}, // 钩子 渲染之前 ,函数内 this 指向 RootElement
        created () {}, // 钩子 渲染之后 无参数, 函数内 this 指向 VirtualScroll 实例
        wheels (orientation, position) {}, // 钩子 滚轮滚动时执行  orientation 表示滚动方向 'up' 向上滚动 'down' 向下滚动 ,参数 position 是表示垂直滚动条的滑动偏移量 CurrentPosition
        dragStart (movetype, position) {}, // 钩子 拖动开始  movetype 表示滚动条类型 H 表示水平,V表示垂直 参数 position 是表示垂直滚动条的滑动偏移量 CurrentPosition
        dragging (orientation, position) {}, // 钩子 拖动进行中 参数1是移动方向 orientation (上'up', 下'down', 左'left', 右'right' ) ,参数 position 是表示垂直滚动条的滑动偏移量 CurrentPosition
        dragEnd (movetype, position) {} // 钩子 拖动结束  movetype 表示滚动条类型 H 表示水平,V表示垂直 参数 position 是表示垂直滚动条的滑动偏移量 CurrentPosition
    }