Verhindern Sie JQuery Event Warteur
-
26-10-2019 - |
Frage
Ich habe die folgende JQuery, die wunderschön funktioniert:
<script>
$(document).ready(function()
{
$("#btnDropDown").click(function () {
$("#ListboxWrapper").slideDown("fast");
$("#<%=lstBoxCompany.ClientID%>").focus();
});
$("#ListboxWrapper").focusout(function () {
$("#ListboxWrapper").slideUp("fast");
});
});
</script>
Dies ist außer Wenn man sich konzentriert, #ListboxWrapper
durch Klicken auf #btnDropDown
. Dies führt dazu, dass sich die Ereignisse aufbauen und die Handlungen einige seltsame Ergebnisse verursachen. Ich suche nach einer Möglichkeit, alle weiteren JQuery -Aktionen zu verhindern, nachdem einer von ihnen gefeuert wurde. Das erwartete Ergebnis ist, dass nur eine von ihnen pro Benutzeraktion ausführen kann und sich nicht so aufbauen kann, wie es jetzt vorkommt.
Lösung
Du kannst den ... benutzen : animiert Selektor für Warteschlangenanimationen nur, wenn Ihr Element noch nicht animiert ist:
$("#btnDropDown").click(function() {
$("#ListboxWrapper").not(":animated").slideDown("fast");
$("#<%=lstBoxCompany.ClientID%>").focus();
});
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow