Binden Sie verschiedene Ereignisse zum Klicken und Doppelklicken - CSS-Tricks

Anonim

Möglicherweise möchten Sie, dass ein Link beim Doppelklicken eine spezielle Aktion ausführt, die die Standardaktion des Links verhindert (auf eine andere Seite wechseln). So:

Doppelklick: Führt etwas Besonderes aus, führt überhaupt kein normales Klickereignis aus.
Klick: Funktioniert wie gewohnt

Das Auslösen der normalen Klickaktion, die Sie abbrechen, wenn das Doppelklickereignis eintritt, muss geringfügig verzögert werden.

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(); ));
Schauen Sie sich diesen Stift an!