在引用fastclick.js来对移动端页面消除300ms的延迟,但是在书写表单时,点击type='text'的input没有效果,有时有可能可以点击,但是大多数input是无法点击的,在去掉fastclick.js后input的点击就正常了。这是为什么?是fastclick.js的bug吗?还是要对input标签做特殊处理?
1.
fastclick对input标签做了很多浏览器的兼容处理,不一定是bug
楼主并没有对自己的input是哪一种type以及在何种情况下有更细的描述所以无法帮你解决该问题
楼主可以对着源码搜索input看看,代码中对input的处理,以及各种情况,是否如上面注释所说,并满足预期结构
2.
我移动端也遇到了这样的问题,这篇帖子帮我解决了下,很详细,问题是有点小慢。这是链接地址
FastClick遇到的坑及解决办法-js教程-PHP中文网 http://www.php.cn/js-tutorial...
3.
IOS11 已经修复了300秒延迟。在11上应用fastclick反而会卡顿 input点击不了的
const str= navigator.userAgent.toLowerCase()
const ver=str.match(/cpu iphone os (.*?) like mac os/)
if(!ver){//非IOS系统
// 引入fastclick 做相关处理
}
else {
if(parseInt(ver[1])< 11){
// 引入fastclick 做相关处理
}
}