当前位置: 首页 > 工具软件 > BetterScroll > 使用案例 >

BetterScroll下的页面元素点击事件无效

储承
2023-12-01

最近发现一个场景问题,在ipad+妙控键盘(带触摸板),使用BetterScroll后渲染的页面元素里面的click点击事件无法生效

上面找了很多类似的场景,只是他们都是只设置click的配置项为true,其实这个也没有好解决我上面的场景,只是触屏的touch事件可以触发,但妙控键盘⌨️的触摸板的点击还是无效

于是,看完文档去做了,尝试做了配置项的调整,click 默认,将preventDefault设置为true,使得触屏的touch和触摸板的click事件同时生效

keep moving,稚鸿同学

/**
     * clcik: BetterScroll 默认会阻止浏览器的原生 click 事件,默认是false
     * preventDefault: 当事件派发后是否阻止浏览器默认行为,默认是true
     * 为了适配ipad加上妙控键盘的点击,两者都设置会导致妙控键盘的点击失效,现在直接设置 preventDefault为false
     *  author: 稚鸿同学
     */
    const defaultOptions: Options = {
      bounceTime: TIME_BOUNCE,
      useTransition: false,
      pullDownRefresh: {
        threshold: THRESHOLD,
        stop: STOP
      },
      pullUpLoad: true,
      // click: true,
      preventDefault: false
    }
    this.scroll = new BetterScroll(this.scrollNode, {
      ...defaultOptions,
      ...this.options
    })


 类似资料: