84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
手机端事件触发过程touchstart>touchend>tap +300ms>click这个是移动端一次点击的流程吗?为什么zepto中有个延时250呢?
//zepto中的代码 touchTimeout = setTimeout(function(){ touchTimeout = null if (touch.el) touch.el.trigger('singleTap') touch = {} }, 250)
认证0级讲师
这个延迟是singleTap事件的延迟,用来区分single和double tap
singleTap
如果是单击的话:touchstart>touchend>tap>250ms>singleTap
如果是双击的话:touchstart>touchend>tap>touchstart>touchend>doubleTap
回到你的问题tap事件是怎么模拟的,源码上还是挺清楚的,具体过程如下:
首先tap是在touchend之后时触发的
触发条件一,位移不能大:touchstart和touchend两个位置之间不能有超过横向或者纵向30px的位移
触发条件二,时间不能长:touchstart到touchend之间超过750ms
楼上正解。这个是延迟用来区分单击或双击的。
这个延迟是
singleTap
事件的延迟,用来区分single和double tap如果是单击的话:
touchstart>touchend>tap>250ms>singleTap
如果是双击的话:
touchstart>touchend>tap>touchstart>touchend>doubleTap
回到你的问题tap事件是怎么模拟的,源码上还是挺清楚的,具体过程如下:
首先tap是在touchend之后时触发的
触发条件一,位移不能大:touchstart和touchend两个位置之间不能有超过横向或者纵向30px的位移
触发条件二,时间不能长:touchstart到touchend之间超过750ms
楼上正解。这个是延迟用来区分单击或双击的。