Heim Web-Frontend js-Tutorial So verhindern Sie, dass dasselbe Ereignis wiederholt ausgelöst wird

So verhindern Sie, dass dasselbe Ereignis wiederholt ausgelöst wird

Mar 14, 2018 pm 05:50 PM
事件 wiederholen

Dieses Mal werde ich Ihnen vorstellen, wie Sie verhindern können, dass dasselbe Ereignis wiederholt ausgelöst wird, und welche Vorsichtsmaßnahmen es gibt, um zu verhindern, dass dasselbe Ereignis wiederholt ausgelöst wird ist ein praktischer Fall, schauen wir uns das einmal an.

Wiederholtes Auslösen soll verhindern, dass Benutzer wiederholt klicken, um Daten zu übermitteln. Wenn nach dem Klicken keine Antwort erfolgt, ist dies nicht nur aus Sicht der Benutzererfahrung erforderlich, sondern auch Dies kann in JS- oder PHP-Programmskripten erfolgen. Lassen Sie den Benutzer wissen, dass der Klick gesendet wurde und der Server ihn verarbeitet. Jetzt werde ich das Skript bearbeiten, um dieses wiederholte Auslöseproblem zu beheben.

Oft werden Ereignisse wiederholt und schnell ausgelöst, wie z. B. ein Klick, der den Code zweimal ausführt, was viele Konsequenzen nach sich zieht. Mittlerweile gibt es viele Lösungen, aber fast alle haben Einschränkungen. Wenn Sie beispielsweise in einem Ajax-Formular verhindern, dass Benutzer mehrere Male gleichzeitig klicken, können Sie die Schaltfläche „Senden“ einfrieren, wenn sie zum ersten Mal darauf klicken, und sie dann wieder freigeben erneutes Klicken ist erlaubt. Viele Leute tun dies, aber in anderen Situationen ist es nicht sehr effektiv.

Das Folgende ist eine gute empfohlene Methode. Werfen Sie zunächst eine Funktion hinein.

var _timer = {}; 
function delay_till_last(id, fn, wait) { 
 if (_timer[id]) { 
  window.clearTimeout(_timer[id]); 
  delete _timer[id]; 
 } 
 return _timer[id] = window.setTimeout(function() { 
  fn(); 
  delete _timer[id]; 
 }, wait); 
}
Nach dem Login kopieren

Verwendung

$dom.on('click', function() { 
 delay_till_last('id', function() {//注意 id 是唯一的 
  //响应事件 
 }, 300); 
});
Nach dem Login kopieren

Der obige Code kann 300 Millisekunden nach dem Klicken warten Wenn das Ereignis innerhalb von 300 Millisekunden erneut auftritt, wird der vorherige Klick abgebrochen und der Timer neu eingestellt. Dies wird wiederholt, bis 300 Millisekunden vollständig abgewartet wurden, bevor auf das Ereignis reagiert wird.

Diese Funktion ist sehr nützlich, z. B. um Eingaben zu überprüfen oder den Avatar in Echtzeit basierend auf der eingegebenen E-Mail-Adresse abzurufen, ohne warten zu müssen, bis er unscharf ist, bevor man ihn abruft.

Beispiel

Button BUTTON-Klasse

eine Label-Klasse

Für die erste Art von Situation verfügt die Schaltfläche über ein Attribut, das deaktiviert werden kann, um zu steuern, ob darauf geklickt werden kann. Siehe den Code

<input type="button" value="Click" id="subBtn"/> 
<script type="text/javascript"> 
function myFunc(){ 
 //code 
 //执行某段代码后可选择移除disabled属性,让button可以再次被点击 
 $("#subBtn").removeAttr("disabled"); 
} 
$("#subBtn").click(function(){ 
 //让button无法再次点击 
 $(this).attr("disabled","disabled"); 
 //执行其它代码,比如提交事件等 
 myFunc(); 
}); 
</script>
Nach dem Login kopieren

Ich glaube, Sie haben die Methode nach dem Lesen gemeistert Bitte achten Sie auf weitere spannende Artikel auf der chinesischen PHP-Website.

Empfohlene Lektüre:

So erzielen Sie einen Bildkarusselleffekt

Die jQuery-Methode zum Implementieren eines zeitgesteuerten Ausblenddialogfelds

Das obige ist der detaillierte Inhalt vonSo verhindern Sie, dass dasselbe Ereignis wiederholt ausgelöst wird. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Ereignis-ID 4660: Objekt gelöscht [Fix] Ereignis-ID 4660: Objekt gelöscht [Fix] Jul 03, 2023 am 08:13 AM

Einige unserer Leser sind auf das Ereignis ID4660 gestoßen. Sie sind sich oft nicht sicher, was sie tun sollen, deshalb erklären wir es in diesem Leitfaden. Die Ereignis-ID 4660 wird normalerweise protokolliert, wenn ein Objekt gelöscht wird. Daher werden wir auch einige praktische Möglichkeiten zur Behebung des Problems auf Ihrem Computer untersuchen. Was ist Ereignis-ID4660? Die Ereignis-ID 4660 bezieht sich auf Objekte in Active Directory und wird durch einen der folgenden Faktoren ausgelöst: Objektlöschung – Ein Sicherheitsereignis mit der Ereignis-ID 4660 wird protokolliert, wenn ein Objekt aus Active Directory gelöscht wird. Manuelle Änderungen – Die Ereignis-ID 4660 kann generiert werden, wenn ein Benutzer oder Administrator die Berechtigungen eines Objekts manuell ändert. Dies kann passieren, wenn Sie Berechtigungseinstellungen ändern, Zugriffsebenen ändern oder Personen oder Gruppen hinzufügen oder entfernen

Erhalten Sie bevorstehende Kalenderereignisse auf Ihrem iPhone-Sperrbildschirm Erhalten Sie bevorstehende Kalenderereignisse auf Ihrem iPhone-Sperrbildschirm Dec 01, 2023 pm 02:21 PM

Auf iPhones mit iOS 16 oder höher können Sie bevorstehende Kalenderereignisse direkt auf dem Sperrbildschirm anzeigen. Lesen Sie weiter, um herauszufinden, wie es geht. Aufgrund von Komplikationen auf dem Zifferblatt sind viele Apple Watch-Benutzer daran gewöhnt, einen Blick auf ihr Handgelenk werfen zu können, um das nächste bevorstehende Kalenderereignis zu sehen. Mit der Einführung von iOS 16 und Sperrbildschirm-Widgets können Sie dieselben Kalenderereignisinformationen direkt auf Ihrem iPhone anzeigen, ohne das Gerät überhaupt entsperren zu müssen. Das Widget „Kalender-Sperrbildschirm“ gibt es in zwei Varianten, sodass Sie die Zeit des nächsten bevorstehenden Ereignisses verfolgen oder ein größeres Widget verwenden können, das den Namen des Ereignisses und seine Zeit anzeigt. Um mit dem Hinzufügen von Widgets zu beginnen, entsperren Sie Ihr iPhone mit Face ID oder Touch ID und halten Sie es gedrückt

So lösen Sie das Problem der Endlosschleife beim Öffnen von Webseiten im Edge-Browser So lösen Sie das Problem der Endlosschleife beim Öffnen von Webseiten im Edge-Browser Dec 25, 2023 pm 01:19 PM

Viele Freunde, die den Edge-Browser unter Win10 verwenden, sind auf das Problem gestoßen, dass Webseiten wiederholt geöffnet werden, was Kopfschmerzen bereitet. Werfen wir einen Blick auf die detaillierten Lösungen unten. Was tun, wenn der Edge-Browser immer wieder Webseiten öffnet: 1. Rufen Sie den Edge-Browser auf und klicken Sie auf die drei Punkte in der oberen rechten Ecke. 2. Klicken Sie in der Taskleiste auf „Einstellungen“. 3. Suchen Sie nach „Microsoft Edge-Öffnungsmethode“. 4. Klicken Sie auf das Dropdown-Menü und wählen Sie „Startseite“. 5. Starten Sie den Browser nach Abschluss neu, um das Problem zu beheben.

Was ist in JavaScript der Zweck des „oninput'-Ereignisses? Was ist in JavaScript der Zweck des „oninput'-Ereignisses? Aug 26, 2023 pm 03:17 PM

Wenn dem Eingabefeld ein Wert hinzugefügt wird, tritt das oninput-Ereignis auf. Sie können versuchen, den folgenden Code auszuführen, um zu verstehen, wie Oninput-Ereignisse in JavaScript implementiert werden – Beispiel<!DOCTYPEhtml><html> <body> <p>Writebelow:</p> <inputtype="text&quot

So implementieren Sie die Änderungsereignisbindung ausgewählter Elemente in jQuery So implementieren Sie die Änderungsereignisbindung ausgewählter Elemente in jQuery Feb 23, 2024 pm 01:12 PM

jQuery ist eine beliebte JavaScript-Bibliothek, die zur Vereinfachung der DOM-Manipulation, Ereignisbehandlung, Animationseffekte usw. verwendet werden kann. Bei der Webentwicklung stoßen wir häufig auf Situationen, in denen wir die Ereignisbindung für ausgewählte Elemente ändern müssen. In diesem Artikel wird erläutert, wie Sie mit jQuery ausgewählte Elementänderungsereignisse binden, und es werden spezifische Codebeispiele bereitgestellt. Zuerst müssen wir ein Dropdown-Menü mit Optionen erstellen, die Beschriftungen verwenden:

Wie extrahiere ich nur ein Stück doppelter Daten in der Oracle-Datenbank? Wie extrahiere ich nur ein Stück doppelter Daten in der Oracle-Datenbank? Mar 09, 2024 am 09:03 AM

Wie extrahiere ich nur ein Stück doppelter Daten in der Oracle-Datenbank? Im täglichen Datenbankbetrieb stoßen wir häufig auf Situationen, in denen wir doppelte Daten extrahieren müssen. Manchmal möchten wir eine der doppelten Daten finden, anstatt alle doppelten Daten aufzulisten. In der Oracle-Datenbank können wir diesen Zweck mithilfe einiger SQL-Anweisungen erreichen. Als Nächstes stellen wir vor, wie man nur ein Stück doppelter Daten aus der Oracle-Datenbank extrahiert, und stellen spezifische Codebeispiele bereit. 1. Verwenden Sie die ROWID-Funktion. ROWID ist Ora

Wie implementiert man Kalenderfunktionen und Ereigniserinnerungen in PHP-Projekten? Wie implementiert man Kalenderfunktionen und Ereigniserinnerungen in PHP-Projekten? Nov 02, 2023 pm 12:48 PM

Wie implementiert man Kalenderfunktionen und Ereigniserinnerungen in PHP-Projekten? Kalenderfunktionen und Terminerinnerungen gehören zu den häufigsten Anforderungen bei der Entwicklung von Webanwendungen. Ob persönliche Terminverwaltung, Teamzusammenarbeit oder Online-Veranstaltungsplanung – die Kalenderfunktion ermöglicht eine bequeme Zeitverwaltung und Transaktionsplanung. Die Implementierung von Kalenderfunktionen und Ereigniserinnerungen in PHP-Projekten kann durch die folgenden Schritte abgeschlossen werden. Datenbankdesign Zunächst müssen Sie eine Datenbanktabelle entwerfen, um Informationen zu Kalenderereignissen zu speichern. Ein einfaches Design könnte die folgenden Felder enthalten: id: eindeutig für das Ereignis

Was sind die am häufigsten verwendeten Ereignisse in jquery? Was sind die am häufigsten verwendeten Ereignisse in jquery? Jan 03, 2023 pm 06:13 PM

Häufig verwendete Ereignisse in jquery sind: 1. Fensterereignisse 2. Mausereignisse, bei denen es sich um Ereignisse handelt, die generiert werden, wenn der Benutzer das Dokument bewegt oder darauf klickt, einschließlich Mausklicks, Einzugsereignisse, Auszugsereignisse usw.; 3. Tastaturereignisse: Ereignisse werden jedes Mal generiert, wenn der Benutzer eine Taste auf der Tastatur drückt oder loslässt, einschließlich Tastendruckereignissen, Tastenfreigabeereignissen usw. 4. Formularereignisse, z. B. wenn ein Element den Fokus erhält, wird der Fokus () angezeigt. Das Ereignis wird ausgelöst, und wenn es den Fokus verliert, wird das Ereignis „blur()“ ausgelöst, und das Ereignis „submit()“ wird ausgelöst, wenn das Formular gesendet wird.

See all articles