处理移动端 click
事件 300 毫秒延迟, 由 FT Labs 开发,Github 项目地址:https://github.com/ftlabs/fastclick 。
根据 Google 开发者文档:
...mobile browsers will wait approximately 300ms from the time that you tap the button to fire the click event. The reason for this is that the browser is waiting to see if you are actually performing a double tap.
从点击屏幕上的元素到触发元素的 click
事件,移动浏览器会有大约 300 毫秒的等待时间。为什么这么设计呢? 因为它想看看你是不是要进行双击(double tap)操作。
width=device-width
, Android 上的 Chrome 32+ 会禁用 300ms 延时;<meta name="viewport" content="width=device-width, initial-scale=1">
user-scalable=no
,Android 上的 Chrome(所有版本)都会禁用 300ms 延迟。-ms-touch-action: none
禁止元素双击缩放(参考文章)。TODO: 修改使用接口
window.addEventListener('load', function() {
FastClick.attach(document.body);
}, false);
Zepto.js:
$(function() {
FastClick.attach(document.body);
});
var attachFastClick = require('fastclick');
attachFastClick(document.body);