js按钮双击怎么不让它执行两次单击事件

js按钮双击怎么不让它执行两次单击事件

回答

别截图,直接贴代码。

思路:延时300ms执行click处理函数,如果是双击则取消执行click处理函数。

var s;

var delayClickTimerId;

var b = document.getElementById('bb');

b.onclick = () => {

if(delayClickTimerId) {

return;

}

delayClickTimerId = setTimeout(() => {

delayClickTimerId = null;

clearInterval(s);

s = setInterval(() => {

window.scrollBy(0, 20)

}, 20)

console.log('6666');

}, 300);

}

b.ondbclick = () => {

// 如果是double click,则取消click处理

if(delayClickTimerId) {

clearTimeout(delayClickTimerId);

delayClickTimerId = null;

}

clearInterval(s);

}

详细实现请您站内搜索JavaScript节流和防抖。

以上是 js按钮双击怎么不让它执行两次单击事件 的全部内容, 来源链接: utcz.com/a/69679.html

回到顶部