click事件延迟300ms,处理方法-----FastClick
下载地址:https://github.com/ftlabs/fastclick
http://amazeui.org/1.x/javascript/fastclick/
从点击屏幕上的元素到触发元素的 click
事件,移动浏览器会有大约 300 毫秒的等待时间。为什么这么设计呢? 因为它想看看你是不是要进行双击(double tap)操作。
不应用 FastClick 的场景
1.桌面浏览器;
2.如果 viewport meta 标签 中设置了 width=device-width
, Android 上的 Chrome 32+ 会禁用 300ms 延时;
<meta name="viewport" content="width=device-width, initial-scale=1">
3.viewport meta 标签如果设置了 user-scalable=no
,Android 上的 Chrome(所有版本)都会禁用 300ms 延迟。
4.IE10 中,可以使用 css 属性 -ms-touch-action: none
禁止元素双击缩放(参考文章)
当使用了FastClick后,将所有的click事件延迟300ms都恢复为0。
使用方法
TODO: 修改使用接口
1.
window.addEventListener('load', function() { FastClick.attach(document.body); }, false);
2.Zepto.js:
$(function() { FastClick.attach(document.body); });
var attachFastClick = require('fastclick'); attachFastClick(document.body);
给心灵一个纯净空间,让思想,情感,飞扬!