vue使用 better-scroll的参数和方法详解


Posted in Javascript onJanuary 25, 2018

格式:var obj = new BScroll(object,{[option1,],.,.});

注意:

1、要确保object元素的高度比其父元素高
2、使用时,一定要确保object所在的dom渲染后,再用上面的语句,或者obj.refresh()

Options 参数

  1. startX: 0 开始的X轴位置
  2. startY: 0 开始的Y轴位置
  3. scrollY: true 滚动方向为 Y 轴
  4. scrollX: true 滚动方向为 X 轴
  5. click: true 是否派发click事件,通常判断浏览器派发的click还是betterscroll派发的click,可以用event._constructed,若是bs派发的则为true
  6. directionLockThreshold: 5
  7. momentum: true 当快速滑动时是否开启滑动惯性
  8. bounce: true 是否启用回弹动画效果
  9. selectedIndex: 0 wheel 为 true 时有效,表示被选中的 wheel 索引
  10. rotate: 25 wheel 为 true 时有效,表示被选中的 wheel 每一层的旋转角度
  11. wheel: false 该属性是给 picker 组件使用的,普通的列表滚动不需要配置
  12. snap: false 该属性是给 slider 组件使用的,普通的列表滚动不需要配置
  13. snapLoop: false 是否可以无缝循环轮播
  14. snapThreshold: 0.1 用手指滑动时页面可切换的阈值,大于这个阈值可以滑动的下一页
  15. snapSpeed: 400, 轮播图切换的动画时间
  16. swipeTime: 2500 swipe 持续时间
  17. bounceTime: 700 弹力动画持续的毫秒数
  18. adjustTime: 400 wheel 为 true 有用,调整停留位置的时间
  19. swipeBounceTime: 1200 swipe 回弹 时间
  20. deceleration: 0.001 滚动动量减速越大越快,建议不大于0.01
  21. momentumLimitTime: 300 符合惯性拖动的最大时间
  22. momentumLimitDistance: 15 符合惯性拖动的最小拖动距离
  23. resizePolling: 60 重新调整窗口大小时,重新计算better-scroll的时间间隔
  24. preventDefault: true 是否阻止默认事件
  25. preventDefaultException: { tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT)$/ } 阻止默认事件
  26. HWCompositing: true 是否启用硬件加速
  27. useTransition: true 是否使用CSS3的Transition属性
  28. useTransform: true 是否使用CSS3的Transform属性
  29. probeType: 1 滚动的时候会派发scroll事件,会截流。2滚动的时候实时派发scroll事件,不会截流。 3除了实时派发scroll事件,在swipe的情况下仍然能实时派发scroll事件

Events 事件

代码实例:

let scroll = new BScroll(document.getElementById('wrapper'),{
  probeType: 3
})
 
scroll.on('scroll', (pos) => {
 console.log(pos.x + '~' + pos.y)
})
  1. beforeScrollStart - 滚动开始之前触发
  2. scrollStart - 滚动开始时触发
  3. scroll - 滚动时触发
  4. scrollCancel - 取消滚动时触发
  5. scrollEnd - 滚动结束时触发
  6. touchend - 手指移开屏幕时触发
  7. flick - 触发了 fastclick 时的回调函数
  8. refresh - 当 better-scroll 刷新时触发
  9. destroy - 销毁 better-scroll 实例时触发

函数列表

scrollTo(x, y, time, easing):滚动到某个位置,x,y 代表坐标,time 表示动画时间,easing 表示缓动函数scroll.scrollTo(0, 500)

scrollToElement(el, time, offsetX, offsetY, easing):滚动到某个元素,el(必填)表示 dom 元素,time 表示动画时间,offsetX 和 offsetY 表示坐标偏移量,easing 表示缓动函数

refresh():强制 scroll 重新计算,当 better-scroll 中的元素发生变化的时候调用此方法

getCurrentPage():snap 为 true 时,获取滚动的当前页,返回的对象结构为 {x, y, pageX, pageY},其中 x,y 代表滚动横向和纵向的位置;pageX,pageY 表示横向和纵向的页面索引。用法如:getCurrentPage().pageX 

goToPage(x, y, time, easing)
snap 为 true,滚动到对应的页面,x 表示横向页面索引,y 表示纵向页面索引, time 表示动画,easing 表示缓动函数(可省略不写)

enable()启用 better-scroll,默认开启

disable()  禁用 better-scroll

destroy() 销毁 better-scroll,解绑事件

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

Javascript 相关文章推荐
javascript 获取图片尺寸及放大图片
Sep 04 Javascript
jquery等待效果示例
May 01 Javascript
js给selected添加options的方法
May 06 Javascript
javascript字符串与数组转换汇总
May 26 Javascript
JS建造者模式基本用法实例分析
Jun 30 Javascript
jQuery插件ajaxFileUpload使用详解
Jan 10 Javascript
浅谈jquery拼接字符串效率比较高的方法
Feb 22 Javascript
vue.js+Echarts开发图表放大缩小功能实例
Jun 09 Javascript
express+mockjs实现模拟后台数据发送功能
Jan 07 Javascript
AngularJS实现的base64编码与解码功能示例
May 17 Javascript
JQuery事件委托原理与用法实例分析
May 13 jQuery
vue组件传值的实现方式小结【三种方式】
Feb 05 Javascript
Vue cli+mui 区域滚动的实例代码
Jan 25 #Javascript
基于vue开发的在线付费课程应用过程
Jan 25 #Javascript
基于vue 开发中出现警告问题去除方法
Jan 25 #Javascript
关于express与koa的使用对比详解
Jan 25 #Javascript
在vue项目创建的后初始化首次使用stylus安装方法分享
Jan 25 #Javascript
Vue框架之goods组件开发详解
Jan 25 #Javascript
前端MVVM框架解析之双向绑定
Jan 24 #Javascript
You might like
经典PHP加密解密函数Authcode()修复版代码
2015/04/05 PHP
Yii实现简单分页的方法
2016/04/29 PHP
php防止sql注入的方法详解
2017/02/20 PHP
JS对象转换为Jquery对象实现代码
2013/12/29 Javascript
js防止页面被iframe调用的方法
2014/10/30 Javascript
HTML5 canvas 9绘制图片实例详解
2016/09/06 Javascript
使用JQuery选择HTML遍历函数的方法
2016/09/17 Javascript
JavaScript调试的多个必备小Tips
2017/01/15 Javascript
jQuery插件版本冲突的处理方法分析
2017/01/16 Javascript
AngularJS使用angular.bootstrap完成模块手动加载的方法分析
2017/01/19 Javascript
小程序云开发如何实现图片上传及发表文字
2019/05/17 Javascript
JavaScript箭头函数中的this详解
2019/06/19 Javascript
VUE中使用HTTP库Axios方法详解
2020/02/05 Javascript
JS实现躲避粒子小游戏
2020/06/18 Javascript
[50:12]EG vs Fnatic 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
itchat和matplotlib的结合使用爬取微信信息的实例
2017/08/25 Python
在NumPy中创建空数组/矩阵的方法
2018/06/15 Python
python版本五子棋的实现代码
2018/12/11 Python
python实现多层感知器MLP(基于双月数据集)
2019/01/18 Python
Python XlsxWriter模块Chart类用法实例分析
2019/03/11 Python
Python中的延迟绑定原理详解
2019/10/11 Python
python字符串的拼接方法总结
2019/11/18 Python
python 实现list或string按指定分段
2019/12/25 Python
浅谈keras的深度模型训练过程及结果记录方式
2020/01/24 Python
PyQt5实现画布小程序
2020/05/30 Python
Sunglasses Shop英国:欧洲领先的太阳镜在线供应商之一
2018/09/19 全球购物
TOWER London官网:鞋子、靴子、运动鞋等
2019/07/14 全球购物
银行职业规划书范文
2013/12/28 职场文书
家长给老师的道歉信
2014/01/13 职场文书
会计专业大学生职业生涯规划书
2014/02/11 职场文书
文明礼仪演讲稿
2014/05/12 职场文书
出国留学担保书
2014/05/20 职场文书
出售房屋委托书范本
2014/09/24 职场文书
员工旷工检讨书
2015/08/15 职场文书
《暗黑破坏神2:重制版》本周进行第一轮A测 目前可官网进行申请报名
2021/04/07 其他游戏
关于ObjectUtils.isEmpty() 和 null 的区别
2022/02/28 Java/Android