< ;title> ;script type=" text/javascript" language="javascript">
$(function () {
$("div").bind("click.a", function () { //Klicken event
$("body").append("
click event
");
})
$("div").bind("dblclick.a", function () { //Doppelklick-Ereignis
$("body").append("
dblclick event
"
})
$("div") .bind(" mouseover.a", function () { //Mouse over element event
$("body").append("
mouseover event
");
})
$("div").bind("mouseout.a", function () { //Ereignis, bei dem sich die Maus aus dem Element bewegt
$("body").append("
mouseout event< ;/p> ;");
})
})
jQuery-Namespace< / div>
Der Effekt ist wie im Bild gezeigt, es werden zuerst zwei Klickereignisse ausgelöst. Wenn ich beim Doppelklicken nicht das Klickereignis
, sondern nur das Doppelklickereignis auslösen möchte, wie soll ich das Problem lösen? Ich habe auch versucht, das Klickereignis beim Doppelklicken zu lösen.
Aber auf diese Weise kann das Klickereignis nicht erneut verwendet werden. . .
Später habe ich andere im Forum gefragt und schließlich die Antwort bekommen. Das heißt, das Zeitintervall des Klickereignisses wird mithilfe der setTimeout()-Methode festgelegt. Auf diese Weise wird beim Doppelklicken das Zeitintervall kürzer Wenn der Wert länger als 300 ms ist, wird das Click-Ereignis nicht generiert. Generieren Sie einfach das
dblclick-Ereignis. Im Doppelklick-Ereignis müssen Sie die Funktion clearTimeout() verwenden, um die Verarbeitung des Klick-Ereignisses zu löschen. Der Code lautet wie folgt:
Code kopieren