移动端网页--better-scroll介绍

Options

起始位置及滚动方向

  • startX:0 开始时的X轴位置

  • startY:0 开始时的Y轴位置

  • scrollY: true 滚动方向为 Y 轴

  • scrollX: true 滚动方向为 X 轴

事件参数

  • probeType: 1

    • 1滚动的时候会派发scroll事件,会截流。

    • 2滚动的时候实时派发scroll事件,不会截流。

    • 3除了实时派发scroll事件,在swipe的情况下仍然能实时派发scroll事件

  • click: true 是否派发click事件,通常判断浏览器派发的click还是betterscroll派发的click,可以用_constructed,若是bs派发的则为true

  • preventDefault: true 是否阻止默认事件

  • preventDefaultException: { tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT)$/ } 阻止默认事件

picker组件参数

  • wheel: false 该属性是给 picker 组件使用的,普通的列表滚动不需要配置

  • selectedIndex: 0 wheel 为 true 时有效,表示被选中的 wheel 索引

  • rotate: 25 wheel 为 true 时有效,表示被选中的 wheel 每一层的旋转角度

  • adjustTime: 400 wheel 为 true 有用,调整停留位置的时间

slider组件snap参数

  • snap: false 该属性是给 slider 组件使用的,普通的列表滚动不需要配置

  • snapLoop: false 是否可以无缝循环轮播

  • snapThreshold: 0.1 用手指滑动时页面可切换的阈值,大于这个阈值可以滑动的下一页

  • snapSpeed: 400, 轮播图切换的动画时间

符合惯性拖动设置

  • momentumLimitTime: 300 符合惯性拖动的最大时间

  • momentumLimitDistance: 15 符合惯性拖动的最小拖动距离

  • resizePolling: 60 重新调整窗口大小时,重新计算better-scroll的时间间隔

  • HWCompositing: true 是否启用硬件加速

Transition和Transform属性

  • useTransition: true 是否使用CSS3的Transition属性

  • useTransform: true 是否使用CSS3的Transform属性

其他参数设置

  • swipeTime: 2500 swipe 持续时间

  • bounceTime: 700 弹力动画持续的毫秒数

  • deceleration: 0.001 滚动动量减速越大越快,建议不大于0.01

  • directionLockThreshold: 5

  • momentum: true 当快速滑动时是否开启滑动惯性

  • bounce: true 是否启用回弹动画效果

Events 事件

  • beforeScrollStart - 滚动开始之前触发

  • scrollStart - 滚动开始时触发

  • scroll - 滚动时触发

  • pullingUp-上拉加载

  • scrollCancel - 取消滚动时触发

  • scrollEnd - 滚动结束时触发

  • touchend - 手指移开屏幕时触发

  • flick - 触发了 fastclick 时的回调函数

  • refresh - 当 better-scroll 刷新时触发

  • destroy - 销毁 better-scroll 实例时触发

better-scroll的事件监听: scroll.on('eventName', (e)=>{})

函数列表

  • finishPullUp 上拉加载完成

  • scrollTo(x, y, time, easing)滚动到某个位置

    • x,y 代表坐标

    • time 表示动画时间

    • easing 表示缓动函数

  • 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 表示横向和纵向的页面索引

  • oToPage(x, y, time, easing) snap 为 true,滚动到对应的页面

    • x 表示横向页面索引

    • y 表示纵向页面索引

    • time 表示动画

    • easing 表示缓动函数(可省略不写)

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

  • disable() 禁用 better-scroll

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

移动端网页--better-scroll介绍的更多相关文章

  1. 从零开始学 Web 之 移动Web(二)JD移动端网页,移动触屏事件

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  2. 网络爬虫中Fiddler抓取PC端网页数据包与手机端APP数据包

    1 引言 在编写网络爬虫时,第一步(也是极为关键一步)就是对网络的请求(request)和回复(response)进行分析,寻找其中的规律,然后才能通过网络爬虫进行模拟.浏览器大多也自带有调试工具可以 ...

  3. Java SpringMVC实现PC端网页微信扫码支付完整版

    一:前期微信支付扫盲知识 前提条件是已经有申请了微信支付功能的公众号,然后我们需要得到公众号APPID和微信商户号,这个分别在微信公众号和微信支付商家平台上面可以发现.其实在你申请成功支付功能之后,微 ...

  4. 【Javascript Demo】移动端访问PC端网页时跳转到对应的移动端网页

    不想通过CSS自适应在PC端和移动端分别显示不同的样式,那么只能通过在移动端访问PC端网页时跳转到对应的移动端网页了,那么怎么跳转呢,网上也有很多文章说明,下面是本人测试有效的方式. 1.效果图 PC ...

  5. Java企业微信开发_09_身份验证之移动端网页授权(有完整项目源码)

    注: 源码已上传github: https://github.com/shirayner/WeiXin_QiYe_Demo 一.本节要点 1.1 授权回调域(可信域名) 在开始使用网页授权之前,需要先 ...

  6. 移动端网页 rem css书写

    移动端网页书写   css样式: @charset "utf-8";body,html{font-family: "微软雅黑";font-size:100px; ...

  7. Chrome浏览器如何调试移动端网页信息

    Chrome浏览器如何调试移动端网页信息 2017年08月12日 12:42:20 阅读数:835 最近在弄项目,用WebView加载一个页面,想追踪页面中一个按钮的点击事件.这个可能就需要调试这个页 ...

  8. 移动端网页宽度值(未加meta viewport标签)

    移动端网页宽度值(未加meta viewport标签): iphone:980px Galaxy(盖乐世):980px Nexus:980px blackberry(黑莓):980px LG:980p ...

  9. Chrome浏览器调试移动端网页 chrome://inspect/#devices

    我使用的是魅族(魅蓝NOTE6 ),电脑是win 7系统,以下几步就可以轻松使用浏览器内置的功能调试移动端网页了: 注意:谷歌浏览器需要先FQ,不然调试页面会空白或者报404错误,(不会FQ的可以联系 ...

  10. 用Chrome 浏览器调试移动端网页 chrome://inspect/#devices

    谷歌输入(chrome://inspect/#devices) 我使用的是小米(红米NOTE2 ),电脑是win 10 系统,以下几步就可以轻松使用浏览器内置的功能调试移动端网页了: 1. 手机开启调 ...

随机推荐

  1. 为动态二级域名申请https的免费证书.

    前面已经讲过将nginx部署,并注册了免费的二级域名.但将网址发给儿子,儿子说微信已经不能打开http的网址了,所以一想还是研究一下https的证书申请. 网上有很多讲通过,acme的脚本来自动化申请 ...

  2. oculus按键大全

    // OVRInput.Update(); if (OVRInput.GetUp(OVRInput.Button.Three)) { Debug.Log("remote click" ...

  3. ES6 之 Promise

    promise 与ajax 实现两个ajax返回参数的拼接 // 函数 fetch() { return new Promise((resolve, reject) => { Utils.sen ...

  4. JavaScript数据类型以及转换

    一.数据类型 分类 基本(值)类型: String Number Boolean undefined unll 对象(引用)类型: Object:任意对象 Array:一种特别的对象 Function ...

  5. 理解 Linux 文件权限

    理解 Linux 文件权限 缺乏安全性的系统不是完整的系统.系统中必须有一套能够保护文件免遭非授权用户浏览或修改的机制.Linux 沿用了 Unix 文件权限的办法,即允许用户和组根据每个文件和目录的 ...

  6. Linux系列---【内存占用过高问题排查思路】

    内存占用过高问题排查思路 1.使用top命令查看后台任务 按shift+M使应用按内存使用率排序,定位到第一个使用内存最高的应用,并找到对应的PID. 2.使用ps命令查看对应的pid对应哪个应用 p ...

  7. Unity 转小游戏

    填写appid 和游戏资源位置 在导出的项目里可以修改游戏资源位置 两个目录 minigame 是小程序打开的目录 webgl 是要下载的的资源 下载一个http 服务器就有了 和JS交互 大部分js ...

  8. 导出数据库表以及备注为excel

    import com.alibaba.excel.annotation.ExcelProperty; import lombok.AllArgsConstructor; import lombok.D ...

  9. JS实现一个函数getType获取所有的数据类型

    1 function getType(obj) { 2 if (obj === null) { 3 return String(obj) 4 } 5 const toType = (obj) => ...

  10. 狂神学习笔记domo6

    1.新特性,1000000000可以写成10_0000_0000便于阅读 2.强制类型转换 先强制类型转换再赋值才能正确的结果 public class domo06 { public static ...