Fastclick 导致click事件触发两次的问题,fastclickclick
时间: 2024-05-12 07:15:34 浏览: 155
fastclick插件导致日期(input[type="date"])控件无法被触发该如何解决
Fastclick 是一个用于解决移动端点击事件延迟的 JavaScript 库,在某些场景下可能会导致点击事件触发两次的问题。这是因为 Fastclick 在绑定点击事件时,会在 touchstart 和 touchend 时都触发一次事件处理函数,造成了事件的重复触发。
要解决这个问题,可以使用以下方法之一:
1. 升级 Fastclick 版本。较新版本的 Fastclick 已经修复了这个问题。
2. 在绑定点击事件时,使用原生事件监听方式,而不是 Fastclick 提供的绑定方式,例如:
```
element.addEventListener('click', function() {
// 处理点击事件
});
```
3. 在 Fastclick 初始化时,设置 `tapDelay` 选项为一个较大的值,例如:
```
FastClick.attach(document.body, {
tapDelay: 100
});
```
这个选项可以让 Fastclick 延迟触发事件处理函数,从而避免重复触发。
阅读全文