
1 cydysm Jun 14, 2019 via iPhone 你是说防抖? |
2 xiaopc Jun 14, 2019 via Android ondblclick event? |
5 chord OP 也不能用到任何时间有关的。。。这个题目实在想不出解决方案 |
7 xiangyuecn Jun 14, 2019 怎么会想到用定时器?不应该第一个想到:记录每次单击的时间,然后判断两次单击间的时间间隔么? 分享一下我的理解: 双击===同一位置短时间内的两次单击。记录每次单击的时间,如果这次单击距离上次单击的间隔很短,并且点击坐标在同一位置,说明是双击 这里所说的 单击===同一位置按下和弹起,并且没有发生移动行为 同理,“长按” 操作 也可以这样处理 |
8 ETiV Jun 14, 2019 window.requestAnimationFrame https://developer.mozilla.org/zh-CN/docs/Web/API/Window/requestAnimationFrame 数帧数就好了……严格来说跟时间无关… |
9 chord OP @xiangyuecn 意思就是不记录时间呢?哈哈哈 |
10 Chingim Jun 14, 2019 via Android 单击和双击的区别是什么?不就是时间吗? |
12 ETiV Jun 15, 2019 via iPhone @sudoer 任何跑得起来的大系统都是个巨大循环,最外层都是 while true,用 reqAni 也是同理 然后基本就是通过全局状态,记录某一次单击的 frameId、判断再次单击时的新 frameId、对比两个 id 的差值,差得比较近的,模拟触发双击 |
13 crs0910 Jun 15, 2019 click 事件弄个 css 遮罩? |
14 jiejiss Jun 15, 2019 防抖都是在时间上定义的(否则何来“抖”?) 不让用时间的话,只好想办法弄来时间了 比如楼上提到的 requestAnimationFrame 或者是用没被封的 API 例如 performance.now 再或者你给某个指定的 server url 发 request,让 server sleep 1000ms 再发送应答 |