自己写的翻页效果,但是在mac 触板滑动上 遇到点麻烦:mac 触板长滑动一次,mousewheel 事件持续触发将近1.5秒,我想通过防抖和节流的方式解决,但是效果都不是很好

1.节流方式代码如下:这样即便翻页动画做完,还是必须等计时器1.5秒运行结束,把toScroll 设置为true ,才能执行下一次。感觉不流畅。

document.addEventListener('mousewheel', function (event) {if(!$('.cms-home').length){return;}event.preventDefault();if(numItems==0){return;}var _toDown = event.wheelDelta > 0;blockSwipe(_toDown,1500);}, {passive: false});function blockSwipe(toDown,delayScroll) {if(toScroll){toScroll = false;if (toDown) {if(currentItem == 0){toScroll = true;return;}else{currentItem --;smoothScroll($(".home-block").eq(currentItem));buttonCheck(numItems,currentItem);setTimeout(function () {toScroll = true;},delayScroll)}} else {if(currentItem == numItems){toScroll = true;return;}else{currentItem ++;smoothScroll($(".home-block").eq(currentItem));buttonCheck(numItems,currentItem);setTimeout(function () {toScroll = true;},delayScroll)}}}}

2.去抖动方式代码如下:这样可能动画执行完,mousewheel 还在触发,toScroll 无法设置为true,用户又滑动一次,又得等1.5秒(大概)左右。这时用户觉得动画不执行,1.5秒还没到(大概),mousewheel 还在触发,又滑动一次。。。

document.addEventListener('mousewheel', function (event) {if(!$('.cms-home').length){return;}event.preventDefault();if(numItems==0){return;}var _toDown = event.wheelDelta > 0;blockSwipe(_toDown);clearTimeout(timer);var timer = setTimeout(function () {toScroll = true;},500)}, {passive: false});function blockSwipe(toDown,delayScroll) {if(toScroll){toScroll = false;if (toDown) {if(currentItem == 0){toScroll = true;return;}else{currentItem --;smoothScroll($(".home-block").eq(currentItem));buttonCheck(numItems,currentItem);}} else {if(currentItem == numItems){toScroll = true;return;}else{currentItem ++;smoothScroll($(".home-block").eq(currentItem));buttonCheck(numItems,currentItem);}}}}

我实在想不到办法,这个issue对于我就像无解之谜。fullpage.js好像解决 了这个issue ,但是我研究好久都没看出来(菜菜的)。

mac笔记本的触控板多次触发滚轮事件 mousewheel相关推荐

  1. 笔记本的触控板你真的会用吗?盲生你发现了华点哦

    笔记本强大的触控板 之前是一直没有发现没有想到笔记本的触控板竟然这么强大!亏我最开始以为,外设可以有鼠标了,还要触控板什么事儿?而且鼠标这么灵活好用,当然,确实鼠标是比触控板灵活,但是,当触控板的手势 ...

  2. mac鼠标和触控板滚动方向_Apple 无线鼠标、键盘或触控板各型号的Mac系统要求和区别...

    今天小编给大家介绍一下Apple 无线鼠标.键盘或触控板各型号的Mac系统要求和区别,以便满足您的使用需求. Apple 无线鼠标 Magic Mouse 2 鼠标 Lightning 接口.内建电池 ...

  3. mac brew opencv_Mac触控板绘画工具

    Inklet是Mac os系统上一款触控板绘画工具,把你的触控板变成画画的板子,意思是,你点在触控板的哪里,鼠标就会出现载相应的地方.例如,但你把手指移动到触控盘左下角,那么鼠标也会出现在左下角,对于 ...

  4. Mac上Multitouch触控板手势使用技巧

    Multitouch是Mac平台上一款触控板手势增强软件,各种不同的触控板手势,手指轻点.轻扫等就能快速进行操作,使用非常便捷,使用非常便捷,你可以在 trackpad.magic mouse 上定义 ...

  5. mac鼠标和触控板方向相同

    下载scrollreverser https://pilotmoon.com/scrollreverser/ 勾选方向自然 设置

  6. 小米笔记本AIR3触控板使用技巧

    单指滑动:移动鼠标 单指轻点:鼠标左键点击 双指同时轻点:鼠标右键点击 双指同时上下滑动:鼠标中键滑轮 三指同时下滑:返回桌面 四指同时上滑:进入程序切换页面 单指快速点击两下且第二下不放开并移动:选 ...

  7. mac idea 触控板 缩放 字体大小

    在 Mac 上使用触控板来放大图像 您可以使用触控板来放大屏幕的部分区域. 在 Mac 上,选取苹果菜单  >"系统偏好设置",点按"辅助功能",然后点按 ...

  8. 苹果usb设置在哪里_如何解决苹果Mac无线鼠标、键盘或触控板无法被搭配识别?...

    如何解决苹果Mac无线鼠标.键盘或触控板无法被搭配识别?首先要确保无线鼠标.键盘或触控板已开启,具体的步骤请按下方操作. 确保无线鼠标.键盘或触控板已开启 妙控鼠标和妙控鼠标 2 的底部都有一个滑动开 ...

  9. 快捷键 鼠标滚轮与触控板翻转 mac

    文章目录 快捷键 截屏 其他 触控板与鼠标的单独翻转 快捷键 截屏 command + shift + 3:截取全屏并自动保存至桌面 command + shift + 4:选定区域截屏,同样保存至桌 ...

最新文章

  1. Docker基本原理概述
  2. 强行分类提取特征自编码网络例4
  3. C语言数组类型、数组指针类型、数组指针类型变量
  4. java数据分析平台源码_DataGear数据可视化分析平台 v2.0.0
  5. IP Cam须改原厂密码防黑客
  6. [BizTalk]在高可用性环境下配置BizTalk的一些常见问题
  7. Flink进行Kafka事实表与Mysql维度表Join(纯DDL/DML方式)
  8. 使用Zuul构建API Gateway
  9. mybaitis动态sql利用bind标签代替%拼接完成模糊查询
  10. 面向对象下计算器的编码实现
  11. MYSQL主从复制操作文档
  12. 29 伪造ICMP数据包的IP层
  13. 安徽大学836数字电路与逻辑设计考研历年真题库资料
  14. 华为手机计算机不能用,华为手机无法连接电脑(手机助手)怎么办,连接不上...
  15. ERP系统多少钱一套?不同情况详情分析告诉你!
  16. 当面试官说 “你还有什么问题想问的” ,你该如何回答?
  17. Linux中ls颜色含义
  18. 如何将已下载音乐导入到iPhone的网易云音乐中
  19. 自动生成Changelog
  20. Android 录音声音分贝获取

热门文章

  1. html5基础知识第四章其他标签
  2. 短视频如何写出吸引人的标题?学会这几招,让你的标题更有说服力
  3. 纸牌游戏(思维+贪心策略)
  4. 通信标准11之HARQ-ACK码本
  5. 又一款全自动装卸车神器
  6. python的函数???????
  7. 如此奇葩,非圆满毕业典礼!个个都是人才
  8. myeclipse10 已成功激活,激活一次用三年
  9. 微信授权获取openID等信息,这里简化记录一下
  10. 【附源码】Java计算机毕业设计安卓基于Android的物流快递app(程序+LW+部署)