Legați diferite evenimente de clic și dublu clic - CSS-Tricks

Anonim

S-ar putea să doriți ca un link să aibă o acțiune specială când faceți dublu clic, ceea ce împiedică acțiunea implicită a linkului (accesați o altă pagină). Asa de:

Faceți dublu clic: face ceva special, nu face deloc un eveniment de clic normal
Click: funcționează normal

Va trebui să aveți o întârziere foarte mică la declanșarea acțiunii de clic normale, pe care o anulați atunci când se întâmplă evenimentul cu dublu clic.

function doClickAction() ( $("#click h2").append("•"); ) function doDoubleClickAction() ( $("#double-click h2").append("•"); ) var timer = 0; var delay = 200; var prevent = false; $("#target") .on("click", function() ( timer = setTimeout(function() ( if (!prevent) ( doClickAction(); ) prevent = false; ), delay); )) .on("dblclick", function() ( clearTimeout(timer); prevent = true; doDoubleClickAction(); ));
Verificați acest stilou!