cách tiếp cận hơi khác - Lần so sánh nhấp thực tế xảy ra sau trong khoảng thời gian định trước, chúng tôi chỉ cần giữ tab trên cờ.
& với một số sửa đổi đơn giản (nhấp chuột thay vì cờ) nó cũng có thể được mở rộng đến bất kỳ số nhấp chuột liên tiếp nhanh nào (ba lần nhấp, et al), bị giới hạn bởi tính thực tiễn.
var clicked = false,
dblClicked = false,
clickTimer;
function onClick(param){
console.log('Node clicked. param - ',param);
};
function onDoubleClick(param){
console.log('Node Double clicked. param - ',param);
};
function clickCheck(param){
if (!clicked){
clicked = true;
clickTimer = setTimeout(function(){
if(dblClicked){
onDoubleClick(param);
}
else if(clicked){
onClick(param);
}
clicked = false;
dblClicked = false;
clearTimeout(clickTimer);
},150);
} else {
dblClicked = true;
}
};
Không có thiết bị nào hoạt động bình thường. Kiểm tra lại lần nữa –
Nên được sửa –
Tôi nghĩ chúng ta nên làm điều gì đó như sau: Đợi chức năng nhấp.Nếu không có gì xảy ra trong một giây hoặc lâu hơn sau hàm nhấp chuột thì hãy cảnh báo ("nhấp chuột duy nhất"). Hoặc nếu có một sự kiện nhấp chuột khác trong vòng một giây sau lần nhấp đầu tiên thì hãy cảnh báo ("nhấp chuột dbl"). Bạn nghĩ sao? –