在触摸设备上,touch 事件从手指刚碰到屏幕就会触发,而 click 事件则要晚一会儿才被触发。触发顺序如下:
touchstart
mouseover
mousemove(一次)
mousedown
mouseup
click
touchend
所以,如果想提升 web 在触摸设备下的用户体验,让用户觉得响应非常迅速,应该对页面的触摸事件进行事件处理程序的注册,而不应再关注 click 事件。
只注册了 click 事件处理程序的按钮:
Click Me
×CloseOK, you clicked me 2 times.
注册了 touchstart 事件处理程序的按钮:
touch me