gpt4 book ai didi

javascript - 双击事件也会触发 EaselJS 中的 Click 事件

转载 作者:行者123 更新时间:2023-11-28 06:21:39 29 4
gpt4 key购买 nike

添加事件监听器

function Solitaire() {
this.table.addEventListener("click", this.handleClick.bind(this));
this.table.addEventListener("dblclick", this.handleDoubleClick.bind(this));
}

处理事件

Solitaire.prototype.handleDoubleClick = function(event) {
console.log("DoubleClick");
};
Solitaire.prototype.handleClick = function(event) {
console.log("Click");
};

双击事件的预期输出(在控制台中)

DoubleClick

但是我在控制台中得到的输出:

Click
Click
DoubleClick

最佳答案

我不了解 easeljs,但我可以告诉你它是如何在 jQuery 中完成的,你需要“破解”它才能使其真正工作。

var DELAY = 500;
$('#my_element').on('click', function(e){

++clicks; // Count the clicks

if(clicks === 1){
// One click has been made

var myTimerToDetectDoubleClick = setTimeout(function(){

console.log('This was a single click');
doStuffForSingleClick();
clicks = 0;
}, DELAY);

} // End of if
else{

// Someone is clicking pretty damn fast, they probably mean double click :p
clearTimeout(myTimerToDetectDoubleClick);
doStuffForDoubleClick();
clicks = 0;
}
}).on('dblclick', function(evt){

evt.preventDefault(); // cancel system's default double click
});

easeljs 事件处理的基本本质将保持不变。您可以在那里相应地模仿这种行为。

关于javascript - 双击事件也会触发 EaselJS 中的 Click 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35475153/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com