jQuery中Nicescroll滚动条插件的用法


Posted in Javascript onNovember 10, 2016

本篇文章主要介绍了jQuery中Nicescroll滚动条插件的用法,Nicescroll滚动条插件是一个非常强大的基于jQuery的滚动条插件,有需要的可以了解下。
Nicescroll滚动条插件是一个非常强大的基于jQuery的滚动条插件,不需要增加额外的css,几乎全浏览器兼容。ie6+,实现只需要一段代码,侵入性非常小,样式可完全自定义,支持触摸事件,可在触摸屏上使用。

Nicescroll官网地址:http://www.areaaperta.com/nicescroll/

引入核心文件,插件需要引入1.5.X以上版本的jquery库

最简单的用法如下:

$(document).ready(
 function() { 
  $("html").niceScroll();
 }
);

注意:一定要放在 $(document).ready 中进行初始化!

隐藏滚动条

$("#mydiv").getNiceScroll().hide();

检测滚动条是否重置大小(当窗口改变大小时)

$("#mydiv").getNiceScroll().resize();

滚动到某个位置

$("#mydiv").getNiceScroll(0).doScrollLeft(x, duration); // Scroll X Axis
$("#mydiv").getNiceScroll(0).doScrollTop(y, duration); // Scroll Y Axis

可增加各种参数

$(document).ready(
 function() { 
  $("#thisdiv").niceScroll({cursorcolor:"#00F"});
 }
);

配置参数表

$("#thisdiv").niceScroll({
    cursorcolor: "#424242", // 改变滚动条颜色,使用16进制颜色值
    cursoropacitymin: 0, // 当滚动条是隐藏状态时改变透明度, 值范围 1 到 0
    cursoropacitymax: 1, // 当滚动条是显示状态时改变透明度, 值范围 1 到 0
    cursorwidth: "5px", // 滚动条的宽度,单位:便素
    cursorborder: "1px solid #fff", // CSS方式定义滚动条边框
    cursorborderradius: "5px", // 滚动条圆角(像素)
    zindex: "auto" | <number>, // 改变滚动条的DIV的z-index值
    scrollspeed: 60, // 滚动速度
    mousescrollstep: 40, // 鼠标滚轮的滚动速度 (像素)
    touchbehavior: false, // 激活拖拽滚动
    hwacceleration: true, // 激活硬件加速
    boxzoom: false, // 激活放大box的内容
    dblclickzoom: true, // (仅当 boxzoom=true时有效)双击box时放大
    gesturezoom: true, // (仅 boxzoom=true 和触屏设备时有效) 激活变焦当out/in(两个手指外张或收缩)
    grabcursorenabled: true // (仅当 touchbehavior=true) 显示“抓住”图标display "grab" icon
    autohidemode: true, // 隐藏滚动条的方式, 可用的值: 
     true | // 无滚动时隐藏
     "cursor" | // 隐藏
     false | // 不隐藏,
     "leave" | // 仅在指针离开内容时隐藏
     "hidden" | // 一直隐藏
     "scroll", // 仅在滚动时显示    
    background: "", // 轨道的背景颜色
    iframeautoresize: true, // 在加载事件时自动重置iframe大小
    cursorminheight: 32, // 设置滚动条的最小高度 (像素)
    preservenativescrolling: true, // 你可以用鼠标滚动可滚动区域的滚动条和增加鼠标滚轮事件
    railoffset: false, // 可以使用top/left来修正位置
    bouncescroll: false, // (only hw accell) 启用滚动跳跃的内容移动
    spacebarenabled: true, // 当按下空格时使页面向下滚动
    railpadding: { top: 0, right: 0, left: 0, bottom: 0 }, // 设置轨道的内间距
    disableoutline: true, // 当选中一个使用nicescroll的div时,chrome浏览器中禁用outline
    horizrailenabled: true, // nicescroll可以管理水平滚动
    railalign: right, // 对齐垂直轨道
    railvalign: bottom, // 对齐水平轨道
    enabletranslate3d: true, // nicescroll 可以使用CSS变型来滚动内容
    enablemousewheel: true, // nicescroll可以管理鼠标滚轮事件
    enablekeyboard: true, // nicescroll可以管理键盘事件
    smoothscroll: true, // ease动画滚动
    sensitiverail: true, // 单击轨道产生滚动
    enablemouselockapi: true, // 可以用鼠标锁定API标题 (类似对象拖动)
    cursorfixedheight: false, // 修正光标的高度(像素)
    hidecursordelay: 400, // 设置滚动条淡出的延迟时间(毫秒)
    directionlockdeadzone: 6, // 设定死区,为激活方向锁定(像素)
    nativeparentscrolling: true, // 检测内容底部便于让父级滚动
    enablescrollonselection: true, // 当选择文本时激活内容自动滚动
    cursordragspeed: 0.3, // 设置拖拽的速度
    rtlmode: "auto", // DIV的水平滚动从左边开始
    cursordragontouch: false, // 使用触屏模式来实现拖拽
    oneaxismousemode: "auto", // 当只有水平滚动时可以用鼠标滚轮来滚动,如果设为false则不支持水平滚动,如果设为auto支持双轴滚动
    scriptpath: "" // 为boxmode图片自定义路径 ("" => same script path)
    preventmultitouchscrolling: true // 防止多触点事件引发滚动
  });

另外注意:当在同一页面中使用多个nicescroll插件时,要及时隐藏用完的nicescroll对象,加载时,需要先show,再resize。

当插件放在具有absolute浮动的容器中,并设置了top值时,插件的top会出现问题,解决方法使用插件的railoffset属性:

railoffset, you can add offset top/left for rail position (default:false)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
对字符串进行HTML编码和解码的JavaScript函数
Feb 01 Javascript
在iframe里的页面编写js,实现在父窗口上创建动画效果展开和收缩的div(不变动iframe父窗口代码)
Dec 20 Javascript
jQuery模拟超链接点击效果代码
Apr 21 Javascript
jquery prop的使用介绍及与attr的区别
Dec 19 Javascript
Internet Explorer 11 浏览器介绍:别叫我IE
Sep 28 Javascript
js根据鼠标移动速度背景图片自动旋转的方法
Feb 28 Javascript
js获取form表单所有数据的简单方法
Aug 18 Javascript
AngularJs 动态加载模块和依赖
Sep 15 Javascript
简易Vue评论框架的实现(父组件的实现)
Jan 08 Javascript
vue左右侧联动滚动的实现代码
Jun 06 Javascript
在layer弹层layer.prompt中,修改placeholder的实现方法
Sep 27 Javascript
一篇文章看懂JavaScript中的回调
Jan 05 Javascript
js对字符串进行编码的方法总结(推荐)
Nov 10 #Javascript
EasyUI 结合JS导出Excel文件的实现方法
Nov 10 #Javascript
浅谈MVC+EF easyui dataGrid 动态加载分页表格
Nov 10 #Javascript
微信小程序 后台https域名绑定和免费的https证书申请详解
Nov 10 #Javascript
bootstrap的3级菜单样式,支持母版页保留打开状态实现方法
Nov 10 #Javascript
浅谈layer的iframe弹窗给里面的标签赋值的问题
Nov 10 #Javascript
微信小程序 删除项目工程实现步骤
Nov 10 #Javascript
You might like
php中mysql模块部分功能的简单封装
2011/09/30 PHP
PHP集成百度Ueditor 1.4.3
2014/11/23 PHP
PHP中使用foreach()遍历二维数组的简单实例
2016/06/13 PHP
php封装的单文件(图片)上传类完整实例
2016/10/18 PHP
Laravel框架使用技巧之使用url()全局函数返回前一个页面的地址方法详解
2020/04/06 PHP
js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动)
2013/12/11 Javascript
JavaScript Window浏览器对象模型方法与属性汇总
2015/04/20 Javascript
javascirpt实现2个iframe之间传值的方法
2016/06/30 Javascript
Vue2.0 UI框架ElementUI使用方法详解
2017/04/14 Javascript
彻底解决 webpack 打包文件体积过大问题
2017/07/07 Javascript
js 获取html5的data属性实现方法
2017/07/28 Javascript
移动端效果之IndexList详解
2017/10/20 Javascript
微信小程序实现点击按钮修改字体颜色功能【附demo源码下载】
2017/12/05 Javascript
JavaScript实现的3D旋转魔方动画效果实例代码
2019/07/31 Javascript
基于VUE实现判断设备是PC还是移动端
2020/07/03 Javascript
jQuery实现简单三级联动效果
2020/09/05 jQuery
js节流防抖应用场景,以及在vue中节流防抖的具体实现操作
2020/09/21 Javascript
为Python的web框架编写前端模版的教程
2015/04/30 Python
Python做智能家居温湿度报警系统
2018/09/25 Python
基于python调用psutil模块过程解析
2019/12/20 Python
Pytorch evaluation每次运行结果不同的解决
2020/01/02 Python
Python安装tar.gz格式文件方法详解
2020/01/19 Python
解决numpy矩阵相减出现的负值自动转正值的问题
2020/06/03 Python
办公室前台岗位职责范本
2013/12/10 职场文书
汽车装潢店创业计划书范文
2014/02/05 职场文书
企业党建工作汇报材料
2014/08/19 职场文书
邮政竞聘演讲稿
2014/09/03 职场文书
2014年实验室工作总结
2014/12/03 职场文书
小学生安全教育主题班会
2015/08/12 职场文书
珍爱生命主题班会
2015/08/13 职场文书
医学生自荐信范文(2016精选篇)
2016/01/28 职场文书
jQuery class属性操作addClass()与removeClass()、hasClass()、toggleClass()
2021/03/31 jQuery
如何用python清洗文件中的数据
2021/06/18 Python
MySQL8.0的WITH查询详情
2021/08/30 MySQL
golang为什么要统一错误处理
2022/04/03 Golang
德生TECSUN S-2000使用手册文字版
2022/05/10 无线电