Detaillierte Analyse benutzerdefinierter JavaScript-Ereignisse
Dieser Artikel enthält hauptsächlich eine detaillierte Analyse von benutzerdefinierten JavaScript-Ereignissen, mit denen Benutzer mit Browsern interagieren können. In diesem Fall besteht unsere Codelogik im Allgemeinen darin, vom Benutzer eingegebene Informationen zu sammeln und die Rechtmäßigkeit der Informationen zu überprüfen , und verwenden Sie AJAX. Freunde, die mit dem Server interagieren müssen, können darauf verweisen. Ich hoffe, es kann allen helfen.
Veranstaltung
Das allgemeine technische Niveau ist begrenzt. Wenn es Fehler gibt, korrigieren Sie mich bitte.
Ereignisse sind eine Möglichkeit für Benutzer, mit dem Browser zu interagieren. Wenn ein Benutzer beispielsweise eine Funktion registriert, können wir nach dem Ausfüllen der grundlegenden Informationen auf die Schaltfläche „Senden“ klicken, um die Registrierungsfunktion zu implementieren. Zum Abschließen dieser Funktion ist lediglich ein Klickereignis erforderlich. Wir definieren das Betriebsverhalten vorab und führen unser vorab festgelegtes Verhalten aus, wenn der Benutzer auf die Schaltfläche „Senden“ klickt. In diesem Fall besteht unsere Codelogik im Allgemeinen darin, die vom Benutzer eingegebenen Informationen zu sammeln, die Rechtmäßigkeit der Informationen zu überprüfen und Verwenden Sie AJAX, um mit dem Server zu interagieren.
Dieser Prozess ist genau so, wie wir normalerweise eine Funktion kapseln und dann die Funktion aufrufen. Das Ereignis ähnelt tatsächlich dem Prozess der Funktionsdefinition und des Funktionsaufrufs, mit der Ausnahme, dass der Aufruf der Ereignisfunktion dem Browser mitgeteilt wird durch einige Vorgänge des Benutzers.
Zunächst einmal hat uns der Browser eine Liste von Ereignissen bereitgestellt, einschließlich Klick, Tastendruck usw. Warum müssen wir Ereignisse anpassen? Tatsächlich ist es eine genauere Beschreibung unseres Verhaltens. Am Beispiel der obigen Benutzerregistrierung können wir ein Ereignis mit dem Namen saveMessage definieren. Dieses Ereignis wird ausgelöst, wenn auf die Schaltfläche „Senden“ geklickt wird. Es scheint jedoch nicht anders zu sein als bei einem normalen Funktionsaufruf. Der Unterschied zwischen Aufruf und Ereignisauslösung besteht darin, dass von uns selbst ausgeführte Funktionen Funktionsaufrufe sind und Funktionen, die nicht von uns ausgeführt werden, ereignisausgelöst sind. Schauen Sie sich den folgenden Code an:
window.onload = function(){ var demo = document.getElementById("demo"); demo.onclick = handler; function handler(){ console.log("aaa"); } }
Wenn wir auf die Schaltfläche klicken, wird aaa gedruckt, und es ist offensichtlich, dass die Funktion nicht von uns aufgerufen wird, aber es ist so Wenn wir die Funktion handler() direkt aufrufen, können wir aaa drucken, aber dies wird von uns aufgerufen, es handelt sich also um einen Funktionsaufruf.
Die Rolle benutzerdefinierter Ereignisse
Benutzerdefinierte Ereignisse sind Funktionen, die wir entsprechend dem Ereignismechanismus des Browsers anpassen. Benutzerdefinierte Ereignisse können zu besseren Erklärungen für unsere Verarbeitungsfunktionen und auch zu besseren Verarbeitungsprozessen für unsere Plug-Ins führen. Angenommen, wir haben eine weitere Anforderung: Rufen Sie einen Datensatz vom Server ab, zeigen Sie ihn als Liste in HTML an und identifizieren Sie dann das erste Datenelement. Wenn wir eine vorhandene Verarbeitungsfunktion verwenden, schreiben wir es möglicherweise so:
dataTable("url"); $("table").find("input[type='checkbox']:first").prop("checked",true);
Dies kann unseren Zweck nicht erreichen, da JS Single-Threaded und AJAX asynchron ist. Wenn der Code $("table").find("input[ When type=' checkbox']:first").prop("checked",true) wird ausgeführt, die von uns benötigten Daten wurden noch nicht abgerufen. Es ist offensichtlich unklug, die interne Implementierung des Plug-Ins zu ändern. Ein akzeptables Plug-In muss über eine angemessene Rückruffunktion (oder ein benutzerdefiniertes Ereignis) verfügen. Wenn es jetzt eine Rückruffunktion gibt, die die Liste erfolgreich zeichnet, können wir dies tun Die Rückruffunktion wird als Ereignis betrachtet. Wir können diesem Ereignis Ereignisoperationen hinzufügen, eine Verarbeitungsfunktion definieren und das Plug-In dann diese Verarbeitungsfunktion ausführen lassen, wenn die Liste erfolgreich gezeichnet wurde.
Benutzerdefinierte Ereignisimplementierung
Wir simulieren die nativen Ereignisse des Browsers, um benutzerdefinierte Ereignisse zu implementieren (en: benutzerdefinierter Ereignisname, fn: Ereignisverarbeitungsfunktion, addEvent: benutzerdefinierte Ereignisse hinzufügen für DOM-Elemente, TriggerEvent: Benutzerdefinierte Ereignisse auslösen):
window.onload = function(){ var demo = document.getElementById("demo"); demo.addEvent("test",function(){console.log("handler1")}); demo.addEvent("test",function(){console.log("handler2")}); demo.onclick = function(){ this.triggerEvent("test"); } } Element.prototype.addEvent = function(en,fn){ this.pools = this.pools || {}; if(en in this.pools){ this.pools[en].push(fn); }else{ this.pools[en] = []; this.pools[en].push(fn); } } Element.prototype.triggerEvent = function(en){ if(en in this.pools){ var fns = this.pools[en]; for(var i=0,il=fns.length;i<il;i++){ fns[i](); } }else{ return; } }
Die von uns ausgeführten Funktionen sind Funktionsaufrufe, und die von uns nicht ausgeführten Funktionen sind Es kann sein Da die Funktion nicht von uns aufgerufen wird, ist es ein Problem, wie der Aufrufer weiß, welche Funktionen aufgerufen werden sollen. Daher müssen einige Einschränkungen zwischen dem Hinzufügen der Ereignisfunktion und dem Auslösen der Ereignisfunktion hinzugefügt werden Von den beiden gibt es einen Ereignispool, auf den jeder zugreifen kann. Fügen Sie das Ereignis und die entsprechende Verarbeitungsfunktion in diesen Pool ein, und gehen Sie zum Pool, um das auszulösende Ereignis zu finden die entsprechende Verarbeitungsfunktion, also Mit dem Code, den wir oben haben.
Es kann viele Verarbeitungsfunktionen für dieselbe Funktion (Ereignis) geben, daher benötigen wir eine Sammlung zum Speichern dieser Verarbeitungsfunktionen. Zu diesem Zeitpunkt sollten wir die beiden Lösungen JSON oder Array widerspiegeln Schlüssel: Wert, für die Verarbeitungsfunktion hat der Name keine Auswirkung, daher verwenden wir ein Array, um zu speichern, welche Funktionen dieser Satz von Funktionen verarbeitet. Daher benötigen wir diesmal auch eine Beschreibung für diesen Satz von Verarbeitungsfunktionen wir brauchen JSON. -->{eventName:[]}.
Verwenden Sie ein vereinfachtes modales BootStrap-Fenster, um die Rolle benutzerdefinierter Ereignisse zu demonstrieren:
window.onload = function(){ var show = document.getElementById("show"); var hide = document.getElementById("hide"); var content = document.getElementById("content"); show.onclick = function(){ content.modal("show"); } hide.onclick = function(){ content.modal("hide"); } content.addEvent("show",function(){alert("show before")}); content.addEvent("shown",function(){ document.getElementById("input").focus(); alert("show after"); }); } ;(function(ep){ ep.addEvent = function(en,fn){ this.pools = this.pools || {}; if(en in this.pools){ this.pools[en].push(fn); }else{ this.pools[en] = []; this.pools[en].push(fn); } } ep.triggerEvent = function(en){ if(en in this.pools){ var fns = this.pools[en]; for(var i=0,il=fns.length;i<il;i++){ fns[i](); } }else{ return; } } ep.modal = function(t){ switch(t){ case "show": this.triggerEvent("show"); this.style.display = "block"; setTimeout(function(){this.triggerEvent("shown")}.bind(this),0);//该定时器主要是为了在视觉上先看见content,在弹出消息 break; case "hide": this.style.display = "none"; break; default: break; } } }(Element.prototype));
Wir können die Ereignisse vor dem Popup vordefinieren Das Fenster erscheint und die Verarbeitungsfunktion nach dem Erscheinen wird ausgeführt, wenn das Popup-Fenster das entsprechende Ereignis auslöst.
Verwandte Empfehlungen:
v-on-Bindung eines benutzerdefinierten Ereignisses in der Vue.js-Komponente
Grundkenntnisse zum Schreiben benutzerdefinierter Ereignisse in JavaScript
Wie um benutzerdefinierte Ereignisse in JavaScript zu erstellen
Das obige ist der detaillierte Inhalt vonDetaillierte Analyse benutzerdefinierter JavaScript-Ereignisse. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Ein Avatar auf Netflix ist eine visuelle Darstellung Ihrer Streaming-Identität. Benutzer können über den Standard-Avatar hinausgehen, um ihre Persönlichkeit auszudrücken. Lesen Sie diesen Artikel weiter, um zu erfahren, wie Sie in der Netflix-App ein benutzerdefiniertes Profilbild festlegen. So legen Sie schnell einen benutzerdefinierten Avatar in Netflix fest. In Netflix gibt es keine integrierte Funktion zum Festlegen eines Profilbilds. Sie können dies jedoch tun, indem Sie die Netflix-Erweiterung in Ihrem Browser installieren. Installieren Sie zunächst ein benutzerdefiniertes Profilbild für die Netflix-Erweiterung in Ihrem Browser. Sie können es im Chrome Store kaufen. Öffnen Sie nach der Installation der Erweiterung Netflix in Ihrem Browser und melden Sie sich bei Ihrem Konto an. Navigieren Sie zu Ihrem Profil in der oberen rechten Ecke und klicken Sie

Die Technologie zur Gesichtserkennung und -erkennung ist bereits eine relativ ausgereifte und weit verbreitete Technologie. Derzeit ist JS die am weitesten verbreitete Internetanwendungssprache. Die Implementierung der Gesichtserkennung und -erkennung im Web-Frontend hat im Vergleich zur Back-End-Gesichtserkennung Vor- und Nachteile. Zu den Vorteilen gehören die Reduzierung der Netzwerkinteraktion und die Echtzeiterkennung, was die Wartezeit des Benutzers erheblich verkürzt und das Benutzererlebnis verbessert. Die Nachteile sind: Es ist durch die Größe des Modells begrenzt und auch die Genauigkeit ist begrenzt. Wie implementiert man mit js die Gesichtserkennung im Web? Um die Gesichtserkennung im Web zu implementieren, müssen Sie mit verwandten Programmiersprachen und -technologien wie JavaScript, HTML, CSS, WebRTC usw. vertraut sein. Gleichzeitig müssen Sie auch relevante Technologien für Computer Vision und künstliche Intelligenz beherrschen. Dies ist aufgrund des Designs der Webseite erwähnenswert

Wie kann ich die Tastenkombinationseinstellungen in Eclipse anpassen? Als Entwickler ist die Beherrschung von Tastenkombinationen einer der Schlüssel zur Effizienzsteigerung beim Codieren in Eclipse. Als leistungsstarke integrierte Entwicklungsumgebung bietet Eclipse nicht nur viele Standard-Tastenkombinationen, sondern ermöglicht Benutzern auch, diese nach ihren eigenen Vorlieben anzupassen. In diesem Artikel wird erläutert, wie Sie die Tastenkombinationseinstellungen in Eclipse anpassen, und es werden spezifische Codebeispiele gegeben. Öffnen Sie Eclipse. Öffnen Sie zunächst Eclipse und geben Sie ein

1. Das Bild unten zeigt das Standard-Bildschirmlayout von edius. Das Standard-EDIUS-Fensterlayout ist ein horizontales Layout. Daher überlappen sich viele Fenster und das Vorschaufenster befindet sich im Einzelfenstermodus. 2. Sie können den [Dual Window Mode] über die Menüleiste [View] aktivieren, damit das Vorschaufenster gleichzeitig das Wiedergabefenster und das Aufnahmefenster anzeigt. 3. Sie können das Standard-Bildschirmlayout über [Ansichtsmenüleiste > Fensterlayout > Allgemein] wiederherstellen. Darüber hinaus können Sie auch das für Sie passende Layout anpassen und es als häufig verwendetes Bildschirmlayout speichern: Ziehen Sie das Fenster auf ein für Sie passendes Layout, klicken Sie dann auf [Ansicht > Fensterlayout > Aktuelles Layout speichern > Neu] und klicken Sie auf „Ansicht > Fensterlayout > Aktuelles Layout speichern > Neu“. Popup [Aktuelles Layout speichern] Layout] Geben Sie den Layoutnamen in das kleine Fenster ein und klicken Sie auf OK

Mit der rasanten Entwicklung der Internetfinanzierung sind Aktieninvestitionen für immer mehr Menschen zur Wahl geworden. Im Aktienhandel sind Kerzendiagramme eine häufig verwendete Methode der technischen Analyse. Sie können den sich ändernden Trend der Aktienkurse anzeigen und Anlegern helfen, genauere Entscheidungen zu treffen. In diesem Artikel werden die Entwicklungskompetenzen von PHP und JS vorgestellt, der Leser wird zum Verständnis des Zeichnens von Aktienkerzendiagrammen geführt und es werden spezifische Codebeispiele bereitgestellt. 1. Aktien-Kerzendiagramme verstehen Bevor wir uns mit dem Zeichnen von Aktien-Kerzendiagrammen befassen, müssen wir zunächst verstehen, was ein Kerzendiagramm ist. Candlestick-Charts wurden von den Japanern entwickelt

In einer Excel-Tabelle müssen Sie manchmal Koordinatenachsen einfügen, um den sich ändernden Trend der Daten intuitiver zu erkennen. Einige Freunde wissen immer noch nicht, wie man Koordinatenachsen in die Tabelle einfügt. Als nächstes werde ich Ihnen zeigen, wie Sie die Koordinatenachsenskala in Excel anpassen. Methode zum Einfügen der Koordinatenachse: 1. Wählen Sie in der Excel-Oberfläche die Daten aus. 2. Klicken Sie in der Einfügeoberfläche auf , um ein Säulendiagramm oder Balkendiagramm einzufügen. 3. Wählen Sie in der erweiterten Oberfläche den Grafiktyp aus. 4. Klicken Sie in der Rechtsklick-Oberfläche der Tabelle auf Daten auswählen. 5. In der erweiterten Benutzeroberfläche können Sie sie anpassen.

JavaScript-Tutorial: So erhalten Sie HTTP-Statuscode. Es sind spezifische Codebeispiele erforderlich. Vorwort: Bei der Webentwicklung ist häufig die Dateninteraktion mit dem Server erforderlich. Bei der Kommunikation mit dem Server müssen wir häufig den zurückgegebenen HTTP-Statuscode abrufen, um festzustellen, ob der Vorgang erfolgreich ist, und die entsprechende Verarbeitung basierend auf verschiedenen Statuscodes durchführen. In diesem Artikel erfahren Sie, wie Sie mit JavaScript HTTP-Statuscodes abrufen und einige praktische Codebeispiele bereitstellen. Verwenden von XMLHttpRequest

Die Beziehung zwischen js und vue: 1. JS als Eckpfeiler der Webentwicklung; 2. Der Aufstieg von Vue.js als Front-End-Framework; 3. Die komplementäre Beziehung zwischen JS und Vue; Vue.
