移动端WEB开发

移动端WEB开发,click,touch,tap事件浅析

≯℡__Kan透↙ 提交于 2019-12-10 16:50:34
一、click 和 tap 比较 两者都会在点击时触发,但是在手机WEB端,click会有 200~300 ms,所以请用tap代替click作为点击事件。 singleTap和doubleTap 分别代表单次点击和双次点击。 二、关于tap的点透处理 在使用zepto框架的tap来移动设备浏览器内的点击事件,来规避click事件的延迟响应时,有可能出现点透的情况,即点击会触发非当前层的点击事件。 处理方式: (1)、 github上有一个叫做fastclick的库,它也能规避移动设备上click事件的延迟响应, https://github.com/ftlabs/fastclick 将它用script标签引入页面(该库支持AMD,于是你也可以按照AMD规范,用诸如require.js的模块加载器引入),并且在dom ready时初始化在body上,如: 然后给需要“无延迟点击”的元素绑定click事件(注意不再是绑定zepto的tap事件)即可。 当然,你也可以不在body上初始化它,而在某个dom上初始化,这样,只有这个dom和它的子元素才能享受“无延迟”的点击 实践开发中发现,当元素绑定fastclick后,click响应速度比tap还要快一点点。哈哈 (2)、为元素绑定touchend事件,并在内部加上e. preventDefault(); $demo.on(