Heim Web-Frontend js-Tutorial Zusammenfassung der Beispiele für die Verwendung von jQuery-Ereignissen_jquery

Zusammenfassung der Beispiele für die Verwendung von jQuery-Ereignissen_jquery

May 16, 2016 pm 04:38 PM
jquery 事件 用法

Dieser Artikel fasst die Verwendung von Ereignissen in jQuery ausführlich anhand von Beispielen zusammen, was einen guten Referenzwert für das Erlernen von jQuery darstellt. Teilen Sie es als Referenz mit allen. Die spezifische Verwendung ist wie folgt:

1. Binden Sie Ereignisse über Methodennamen an Elemente:

$('li').click(function(event){})

Nach dem Login kopieren

2. Binden Sie Ereignisse über die Bindungsmethode an Elemente:

$('li')
 .bind('click',function(event){})
 .bind('click',function(event){}) 
Nach dem Login kopieren
Nach dem Login kopieren

Es ist ersichtlich, dass durch Binden mehrere Ereignisse an Elemente gebunden werden können.

3. Ereignis-Namensraum

Warum benötigen Sie einen Event-Namespace?

→Angenommen, Sie binden zunächst zwei Klickereignisse an das li-Element.

$('li')
 .bind('click',function(event){})
 .bind('click',function(event){}) 
Nach dem Login kopieren
Nach dem Login kopieren

→Jetzt müssen wir eines der Klickereignisse abmelden, das so geschrieben sein könnte:

$('li').unbind('click')
Nach dem Login kopieren

Aber auf diese Weise werden alle Klickereignisse in unserem Li abgemeldet, was nicht das ist, was wir wollen. Die Verwendung des Ereignis-Namespace kann dieses Problem lösen. Der Grund, warum der Ereignis-Namespace benötigt wird, liegt darin, dass er uns beim Abmelden von Ereignissen Komfort bietet.

Wie verwende ich den Event-Namespace?
→Wenn Sie ein Ereignis an ein Element binden, fügen Sie den Namespace nach dem Ereignisnamen hinzu und folgen Sie dabei dem Format: Ereignisname.Namespace-Name.

$('li')
 .bind('click.editMode',function(event){})
 .bind('click.displayMode',function(event){}) 
Nach dem Login kopieren

→Wenn Sie sich von einer Veranstaltung abmelden, können Sie so schreiben:

$('li').unbind('click.editMode')

Nach dem Login kopieren

4. Arten von Veranstaltungen

Unschärfe
ändern
klicken
dblclick
Fehler
Fokus
Fokussieren
focusout
Tastendruck
Tastendruck
keyup
laden
Mousedown
Mauseingabe
Mauseurlaub
Mausbewegung
Mouseout
moseover
Mausup
fertig
Größe ändern
scrollen
auswählen
abschicken
entladen

5.eine Methode

Wird zum Erstellen eines einmaligen Ereignisses verwendet. Sobald dieses Ereignis einmal ausgeführt wird, wird es automatisch gelöscht.

$("p").one("click",function(){
 $(this).animate({fontSize: "+=6px"});
})
Nach dem Login kopieren

6. Ereignisse löschen

//先给元素添加事件
$("p").click(function(){
 $(this).slideToggle();
})
//再把元素的事件删除
$("button").click(function(){
 $("p").unbind();
})

Nach dem Login kopieren

7.Ereignisattribut

Eigentlich handelt es sich um eine globale Eigenschaft von jquery, jQuery.Event. Immer wenn ein Ereignis ausgelöst wird, wird eine Ereignisobjektinstanz an den Ereignishandler übergeben.

Ereignisse können über den Ereigniskonstruktor erstellt und ausgelöst werden.

var e = jQueery.Event("click")
jQuery("body").trigger(e);

Nach dem Login kopieren

Sie können im Event sogar ein anonymes Objekt über den Konstruktor übergeben.

var e = jQuery.Event("keydown", {keyCode : 64});
jQuery("body").trigger(e);

Nach dem Login kopieren

Erhalten Sie bei Verwendung den Wert des anonymen Objekts über event.data.KeyCode.

Anonyme Objekte können in Event über den Konstruktor von jQuery.Event übergeben werden. Darüber hinaus können anonyme Objekte auch über Ereignisse übergeben werden.

$("p").click({param1 : "Hello", param2 : "World"}, someFunction);
function someFunction(event){
 alert(event.data.param1);
 alert(event.data.param2);
}
Nach dem Login kopieren

Es ist ersichtlich, dass der Schlüssel des anonymen Objekts über event.data abgerufen werden kann.

Über Event-Objektinstanzen können Sie auch andere Aspekte von Informationen abrufen, wie zum Beispiel:

$("p").click(function(event){
 alert(event.target.nodeName);
})
Nach dem Login kopieren

Oben erhalten Sie den Namen des Elements, das das Ereignis ausgelöst hat, über event.target.nodeName.

Zu den weiteren Eigenschaften von jQuery.Event gehören:

altKey True, wenn die Alt-Taste gedrückt wird. Auf Mac-Tastaturen ist die Alt-Taste mit Option markiert
ctrKey Strg-Taste wird gedrückt
ShiftKey Umschalttaste wird gedrückt
currentTarget das aktuelle Element in der Blasenphase
Daten
metaKey Im Allgemeinen ist die Meta-Taste Strg, aber auf dem Mac ist es die Befehlstaste
Die horizontale Koordinate des Cursors relativ zum Ursprung der Seite während des pageX-Mausereignisses
pageY Die vertikale Koordinate des Cursors relativ zum Ursprung der Seite während eines Mausereignisses
relatedTarget Das Element, das der Cursor verlässt oder betritt, wenn das Mausereignis ausgelöst wird
Die horizontale Koordinate des Cursors relativ zum Bildschirmursprung während des screenX-Mausereignisses
screenY Die vertikale Koordinate des Cursors relativ zum Ursprung des Bildschirms bei Mausereignissen
Das Ergebnis gibt den neuesten nicht undefinierten Wert des vorherigen Ereignishandlers zurück
Zielelement, das das Ereignis
auslöst Zeitstempel Der Zeitstempel in Millisekunden, als die jQuery.Event-Instanz erstellt wurde
Geben Sie den Ereignistyp ein, z. B. klicken Sie auf
Wenn es sich um ein Tastaturereignis handelt, stellt es die Nummer der Taste dar. Wenn es sich um ein Mausereignis handelt, wird aufgezeichnet, ob die linke Taste, die mittlere Taste oder die rechte Taste gedrückt wurde

8.Ereignismethode

event.preventDefault() verhindert Standardverhalten
event.stopPropgation() stoppt das „Sprudeln“, d. h. stoppt die Ausbreitung weiter oben im DOM
event.stopImmediatePropagation() stoppt die weitere Verbreitung aller Ereignisse
event.isDefaultPrevented()
event.isPropgationStopped()
isImmediatePropgagationStopped()

9.Live-Methode und On-Methode

Mit dieser Methode können wir Ereignisse für Elemente erstellen, die noch nicht existieren. Der Unterschied zur Bindungsmethode besteht darin, dass sie Ereignisse an alle übereinstimmenden Elemente binden kann und die Einstellungen diejenigen Elemente sind, die noch nicht vorhanden sind und dynamisch erstellt werden müssen. Darüber hinaus muss die Live-Methode nicht unbedingt im $(function(){})-Ready-Handler platziert werden. Nach jQuery 1.7 wurde es auf die on-Methode geändert.

$("p").on("click", function(){
 alert("hello");
})
Nach dem Login kopieren

Wenn Sie die Veranstaltungsanmeldung stornieren möchten:

$("button").click(function(){
 $("p").off("click");
})
Nach dem Login kopieren

10.Trigger-Methode

Die Trigger-Methode kann verwendet werden, wenn wir an Elemente gebundene Ereignisse manuell auslösen möchten.

$("#foo").on("click",function(){
 alert($(this).text());
})
$("#foo").trigger("click");

Nach dem Login kopieren

还可以在绑定事件的时候出传入形参,在trigger事件的时候传入实参。

$("#foo").on("custom", function(event, param1, param2){
 alert(param1 + "\n" + param2)
})
$("#foo").trigger("custom",["Custom","Event"]);

Nach dem Login kopieren

trigger触发由jQuery.Event创建的实例:

var event = jQuery.Event("logged");
event.user = "foo";
event.pass = "bar";
$("body").trigger(event);

Nach dem Login kopieren

甚至可以在trigger触发方法的时候传入匿名对象:

$("body").trigger({
 type: "logged",
 user: "foo",
 pass: "bar"
});
Nach dem Login kopieren

如果想停止触发事件的传播,可通过jQuery.Event实例的stopPropgation()方法,或在任何事件中返回false。

11.triggerHandler方法

triggerHandler方法与trigger方法的不同之处在于:triggerHandler方法不会执行元素的默认事件,也不会"冒泡"。

//给一个元素绑定一个focus事件
$("input").focus(function(){
 $("<span>Focused</span>").appendTo("#id").fadeOut(1000);
})
//用triggerHandler触发
$("#id").click(function(){
 $("input").triggerHandler("focus");//不会触发focus的默认行为,即进入文本框
})
//用trigger触发
$("#id").click(function(){
 $("input").trigger("focus");//同时触发foucs的默认行为和绑定行为
})

Nach dem Login kopieren

12.事件冒泡和事件委托

什么是事件冒泡?

有这么一段代码。

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<body>
 <div>
  <p><a href="#foo"><span>I am a Link!</span></a></p>
  <p><a href="#bar"><b><i>I am another Link!</i></b></a></p>
 </div>
</body>
</html>

Nach dem Login kopieren

现在,给该页面所有的元素绑定click事件,包括window和document。

  $(function () {
   $('*').add([document, window]).on('click', function(event) {
    event.preventDefault();
    console.log(this);
   });
  });
Nach dem Login kopieren

当单击页面任何元素,单击事件会从当前元素开始,向上一级元素传播,直到最顶级元素,这里是window。

如何阻止事件冒泡?

显然,通常只希望在某个特定元素发生特定的事件,不希望事件冒泡的发生。这时候我们可以针对某个特定元素绑定事件。

  $(function () {
   $('a').on('click', function(event) {
    event.preventDefault();
    console.log($(this).attr('href'));
   });
  });
Nach dem Login kopieren

以上,只为a绑定了click事件,无它。

如何有效利用事件冒泡?

在jquery中,事件委托却很好地利用了事件冒泡。

<html>
<body>
<div id="container">
 <ul id="list">
  <li><a href="http://domain1.com">Item #1</a></li>
  <li><a href="/local/path/1">Item #2</a></li>
  <li><a href="/local/path/2">Item #3</a></li>
  <li><a href="http://domain4.com">Item #4</a></li>
 </ul>
</div>
</body>
</html>

Nach dem Login kopieren

现在,我们想给现有li中的a标签绑定事件,这样写:

$( "#list a" ).on( "click", function( event ) {
 event.preventDefault();
 console.log( $( this ).text() );
});

Nach dem Login kopieren

但是,如果又在现有的ul中添加新的li和a,那情况又如何呢?

$( "#list" ).append( "<li><a href='http://newdomain.com'>Item #5</a></li>" );

Nach dem Login kopieren

结果,点击新添加的li中的a,什么都没有发生。那么,如何为动态添加的元素绑定事件呢?

如果我们能把事件绑定到a的父级元素,那在父级元素内生成的子级动态元素,也会有绑定事件的行为。

$( "#list" ).on( "click", "a", function( event ) {
 event.preventDefault();
 console.log( $( this ).text() );
});
Nach dem Login kopieren

以上,我们把click事件绑定到a的父级元素id为list的ul上,on方法中的第二个参数,这里是a,是事件真正的执行者。具体过程如下:
→点击某个a标签
→根据事件冒泡,触发了a的父级元素ul的click事件
→而事件真正的执行者是a

事件委托允许我们把事件绑定到父级元素,这相当于给所有的子级元素绑定了事件,不管这个子级元素是静态的、还是动态添加的。

13.toggle方法

允许我们依次执行多个事件,当执行完最后一个事件后,再执行第一个事件。

$('img[src*=small]').toggle({
 function(){},
 function(){},
 function(){}
});

Nach dem Login kopieren

14.mouseenter和mouseleave方法

$(element).mouseenter(function(){}).mouseleave(function(){})

Nach dem Login kopieren

15.hover方法

$("p").hover(function(){
 $("p").css("background-color","yellow");
 },function(){
 $("p").css("background-color","pink");
});

Nach dem Login kopieren

相信本文所述对大家的jQuery程序设计有一定的借鉴价值。

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

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

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)

Wie verwende ich die PUT-Anfragemethode in jQuery? Wie verwende ich die PUT-Anfragemethode in jQuery? Feb 28, 2024 pm 03:12 PM

Wie verwende ich die PUT-Anfragemethode in jQuery? In jQuery ähnelt die Methode zum Senden einer PUT-Anfrage dem Senden anderer Arten von Anfragen, Sie müssen jedoch auf einige Details und Parametereinstellungen achten. PUT-Anfragen werden normalerweise zum Aktualisieren von Ressourcen verwendet, beispielsweise zum Aktualisieren von Daten in einer Datenbank oder zum Aktualisieren von Dateien auf dem Server. Das Folgende ist ein spezifisches Codebeispiel, das die PUT-Anforderungsmethode in jQuery verwendet. Stellen Sie zunächst sicher, dass Sie die jQuery-Bibliotheksdatei einschließen. Anschließend können Sie eine PUT-Anfrage senden über: $.ajax({u

Wie entferne ich das Höhenattribut eines Elements mit jQuery? Wie entferne ich das Höhenattribut eines Elements mit jQuery? Feb 28, 2024 am 08:39 AM

Wie entferne ich das Höhenattribut eines Elements mit jQuery? Bei der Front-End-Entwicklung müssen wir häufig die Höhenattribute von Elementen manipulieren. Manchmal müssen wir möglicherweise die Höhe eines Elements dynamisch ändern, und manchmal müssen wir das Höhenattribut eines Elements entfernen. In diesem Artikel wird erläutert, wie Sie mit jQuery das Höhenattribut eines Elements entfernen, und es werden spezifische Codebeispiele bereitgestellt. Bevor wir jQuery zum Betreiben des Höhenattributs verwenden, müssen wir zunächst das Höhenattribut in CSS verstehen. Das Höhenattribut wird verwendet, um die Höhe eines Elements festzulegen

Ausführliche Erklärung und Einführung in die Verwendung der MySQL-ISNULL-Funktion Ausführliche Erklärung und Einführung in die Verwendung der MySQL-ISNULL-Funktion Mar 01, 2024 pm 05:24 PM

Die Funktion ISNULL() in MySQL ist eine Funktion, mit der ermittelt wird, ob ein angegebener Ausdruck oder eine angegebene Spalte NULL ist. Es gibt einen booleschen Wert zurück, 1, wenn der Ausdruck NULL ist, andernfalls 0. Die Funktion ISNULL() kann in der SELECT-Anweisung oder zur bedingten Beurteilung in der WHERE-Klausel verwendet werden. 1. Die grundlegende Syntax der Funktion ISNULL(): ISNULL(Ausdruck), wobei Ausdruck der Ausdruck ist, um zu bestimmen, ob er NULL ist oder

jQuery-Tipps: Ändern Sie schnell den Text aller a-Tags auf der Seite jQuery-Tipps: Ändern Sie schnell den Text aller a-Tags auf der Seite Feb 28, 2024 pm 09:06 PM

Titel: jQuery-Tipps: Ändern Sie schnell den Text aller Tags auf der Seite. In der Webentwicklung müssen wir häufig Elemente auf der Seite ändern und bedienen. Wenn Sie jQuery verwenden, müssen Sie manchmal den Textinhalt aller a-Tags auf der Seite gleichzeitig ändern, was Zeit und Energie sparen kann. Im Folgenden wird erläutert, wie Sie mit jQuery den Text aller Tags auf der Seite schnell ändern können, und es werden spezifische Codebeispiele angegeben. Zuerst müssen wir die jQuery-Bibliotheksdatei einführen und sicherstellen, dass der folgende Code in die Seite eingefügt wird: &lt

Verwenden Sie jQuery, um den Textinhalt aller a-Tags zu ändern Verwenden Sie jQuery, um den Textinhalt aller a-Tags zu ändern Feb 28, 2024 pm 05:42 PM

Titel: Verwenden Sie jQuery, um den Textinhalt aller Tags zu ändern. jQuery ist eine beliebte JavaScript-Bibliothek, die häufig zur Verarbeitung von DOM-Operationen verwendet wird. Bei der Webentwicklung müssen wir häufig den Textinhalt des Link-Tags (eines Tags) auf der Seite ändern. In diesem Artikel wird erläutert, wie Sie mit jQuery dieses Ziel erreichen, und es werden spezifische Codebeispiele bereitgestellt. Zuerst müssen wir die jQuery-Bibliothek in die Seite einführen. Fügen Sie den folgenden Code in die HTML-Datei ein:

Verstehen Sie die Rolle und Anwendungsszenarien von eq in jQuery Verstehen Sie die Rolle und Anwendungsszenarien von eq in jQuery Feb 28, 2024 pm 01:15 PM

jQuery ist eine beliebte JavaScript-Bibliothek, die häufig zur DOM-Manipulation und Ereignisbehandlung in Webseiten verwendet wird. In jQuery wird die Methode eq() verwendet, um Elemente an einer bestimmten Indexposition auszuwählen. Die spezifischen Verwendungs- und Anwendungsszenarien sind wie folgt. In jQuery wählt die Methode eq() das Element an einer angegebenen Indexposition aus. Indexpositionen beginnen bei 0 zu zählen, d. h. der Index des ersten Elements ist 0, der Index des zweiten Elements ist 1 und so weiter. Die Syntax der eq()-Methode lautet wie folgt: $("s

Wie kann man feststellen, ob ein jQuery-Element ein bestimmtes Attribut hat? Wie kann man feststellen, ob ein jQuery-Element ein bestimmtes Attribut hat? Feb 29, 2024 am 09:03 AM

Wie kann man feststellen, ob ein jQuery-Element ein bestimmtes Attribut hat? Wenn Sie jQuery zum Betreiben von DOM-Elementen verwenden, stoßen Sie häufig auf Situationen, in denen Sie feststellen müssen, ob ein Element ein bestimmtes Attribut hat. In diesem Fall können wir diese Funktion einfach mit Hilfe der von jQuery bereitgestellten Methoden implementieren. Im Folgenden werden zwei häufig verwendete Methoden vorgestellt, um festzustellen, ob ein jQuery-Element über bestimmte Attribute verfügt, und um spezifische Codebeispiele anzuhängen. Methode 1: Verwenden Sie die Methode attr() und den Operator typeof //, um zu bestimmen, ob das Element ein bestimmtes Attribut hat

Korrekte Verwendung der POST-Anfrage in PHP Korrekte Verwendung der POST-Anfrage in PHP Mar 27, 2024 pm 03:15 PM

Die Verwendung von POST-Anfragen in PHP ist ein üblicher Vorgang bei der Website-Entwicklung. Daten können über POST-Anfragen an den Server gesendet werden, z. B. Formulardaten, Benutzerinformationen usw. Die ordnungsgemäße Verwendung von POST-Anfragen kann die Datensicherheit und -genauigkeit gewährleisten. Im Folgenden wird die korrekte Verwendung von POST-Anfragen in PHP vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Grundprinzipien von POST-Anfragen in PHP In PHP können die über die POST-Methode übermittelten Daten mithilfe der globalen Variablen $_POST abgerufen werden. Die POST-Methode wandelt die Formularnummer in um

See all articles