- 下载
npm i better-scroll -S
- 引入配置
import BetterScroll from 'better-scroll'
let bs = new BetterScroll('.wrapper', {
movable: true,
zoom: true
})
import BScroll from '@better-scroll/core'
let bs = new BScroll('.wrapper', {})
- 出现的问题
- 滚轮可以滚动,鼠标拖拽不可以滚动
查看滚动容器和滚动快的高度
发现scrollerHeight: 1579滚动容器高度 = 滚动块高度
重新设置滚动容器和滚动块样式
- 滚轮可以滚动,鼠标拖拽不可以滚动
.home {
width: 100vw;
position: relative;
height: 667px;
}
.wapperr {
position: absolute;
top: 100px;
bottom: 74.5;
width: 100%;
overflow: hidden;
height: calc(100vh - 174.5px);
}
- 现在的效果
鼠标拖拽可以实现,滚轮不可以实现
原因:刚刚查看上面原因时把一些配置注掉了。
let acoll = new BetterScroll(this.$refs.wrapper, {
// movable: true,
// zoom: true,
// click: true, //better-scroll 默认会阻止浏览器的原生 click 事件。当设置为 true,better-scroll 会派发一个 click 事件,我们会给派发的 event 参数加一个私有属性 _constructed,值为 true。
// probeType: 0, //
// probeType: 2, //有回弹效果
// probeType: 3, ////关闭回弹效果引起的scrollY不同步
mouseWheel: true
})
console.log(acoll)
打开mouseWheel: true后两者都可以实现。其他的就继续注着了。。。
https://blog.csdn.net/qq_40745143/article/details/103476978
better-scroll:参数说明:
probeType
可选值:1、2、3
作用:有时候我们需要知道滚动的位置。
当 probeType 为 1 的时候,会非实时(屏幕滑动超过一定时间后)派发scroll 事件;
当 probeType 为 2 的时候,会在屏幕滑动的过程中实时的派发 scroll 事件;
当 probeType 为 3 的时候,不仅在屏幕滑动的过程中,而且在 momentum 滚动动画运行过程中实时派发 scroll 事件。
如果没有设置该值,其默认值为 0,即不派发 scroll 事件。
click
默认值:false
作用:better-scroll 默认会阻止浏览器的原生 click 事件。当设置为 true,
better-scroll 会派发一个 click 事件,我们会给派发的 event 参数加一个私有属性 _constructed,值为 true。
scrollX
默认值: false
作用:当设置为 true 的时候,可以开启横向滚动。
备注:当设置 eventPassthrough 为 ‘horizontal’ 的时候,该配置无效。
scrollY
默认值:true
作用:当设置为 true 的时候,可以开启纵向滚动。
备注:当设置 eventPassthrough 为 ‘vertical’ 的时候,该配置无效。
tap
默认值:false
作用:因为 better-scroll 会阻止原生的 click 事件,我们可以设置 tap 为 true,它会在区域被点击的时候派发一个 tap 事件,你可以像监听原生事件那样去监听它,如 element.addEventListener(‘tap’, doSomething, false);。
如果 tap 设置为字符串, 那么这个字符串就作为自定义事件名称。如 tap: ‘myCustomTapEvent’。
refresh()
作用:重新计算 better-scroll,当 DOM 结构发生变化的时候务必要调用确保滚动的效果正常。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理