jquery.fullPage鼠标滚轮快速从一个页面滚到下一个页面后,如果我不等待一下或者移动一下鼠标,页面就无法继续滚动了

在使用jquery.fullPage的时候,我在每个内置页都设置了自己的滚动,并且在内部滚动设置了@scroll.stop @wheel.stop,用来防止在页面内部有滚动元素的时候,整个页面滚动

我通过触底或者触顶来主动触发事件,让页面上下滚动

zhuyeGridWheel(e){
      console.log(this.$refs.grid.scrollTop); //滚动高度
      console.log(this.$refs.grid.scrollHeight); //滚动部分的总高度
      console.log(this.$refs.grid.clientHeight); //显示部分的高度

      // 向下滚动
      if(e.deltaY > 0 &&
      this.$refs.grid.scrollTop + this.$refs.grid.clientHeight >= this.$refs.grid.scrollHeight - 1
      ){
        console.log('去下一个');
        this.clickSide(2)
      }

      // 向上滚动
      if(e.deltaY < 0 &&
      this.$refs.grid.scrollTop == 0
      ){
        console.log('去上一个');
        this.clickSide(0)
      }
    },

主动跳转事件我单独拿出来了,因为子组件中的元素我也要滚动,我这里通过provide,inject暴露给后代组件,所以上面可以直接用this.方法名 调用

clickSide(num) {
        console.log(num);
        const index = $(this).index();
        $.fn.fullpage.moveTo(num + 1);
      },

现在问题是我鼠标滚轮快速从一个页面滚到下一个页面后,如果我不等待一下或者移动一下鼠标,页面就无法继续滚动了

先去掉vud的@scroll.stop @wheel.stop这2个事件,在试试快速滚动是否有问题,没问题就是和vue绑定事件冲突了。

可以自己给内部的grid添加wheel事件单独控制试试

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632