做过移动端开发的朋友都清楚在移动端,click事件都有大约300毫秒的延迟响应,最开始项目中遇到的点透事件,可把我折磨了好久,后来查了相关资料,才知道是因为click的延迟,最开始解决方案是用touchend事件取代了touch事件,后来总感觉怪怪的,不断的关注这个问题,发现了fastclick这个库。特此记录一下。
由来:是苹果的工程师为了解决“双击缩放”问题,将单击和双击区分开;后鉴于iPhone 的成功,其他移动端浏览器复制了iPhone safari浏览器的多数约定;
解决:FastClick库,检测到touchend事件后,会通过DOM自定义事件立即触发一个模拟的click事件,并在300ms后把真正的click禁止掉;