$.event.trigger({ type: "newMessage", message: "Hello World!", time: new Date() });
$(document).on("newMessage", newMessageHandler);
$("#msgbox").on("submit", SendMessage); // new message: raise newMessage event function SendMessage(e) { e.preventDefault(); var msg = $("#msg").val().trim(); if (msg) { $.event.trigger({ type: "newMessage", message: msg, time: new Date() }); } }
// newMessage event subscribers $(document).on("newMessage", newMessageHandler); // newMessage event handler function newMessageHandler(e) { LogEvent( "Event subscriber on "+e.currentTarget.nodeName+", " +e.time.toLocaleString()+": "+e.message ); }
Les événements personnalisés jQuery sont des événements définis par l'utilisateur qui permettent aux développeurs de créer et de gérer leurs propres événements en plus des événements standard fournis par jQuery. Ils sont importants car ils fournissent un moyen d'encapsuler un comportement qui peut être réutilisé dans différentes parties d'une application. Cela peut conduire à un code plus propre et plus maintenable en réduisant la duplication et en favorisant la séparation des préoccupations.
La création d'un événement personnalisé dans jQuery est simple. Vous pouvez utiliser la méthode .trigger () pour déclencher un événement personnalisé. Voici un exemple simple:
$ (document) .trigger ('myCustomevent');
Dans cet exemple, 'MyCustomevent' est le nom de l'événement personnalisé.
Vous pouvez transmettre des données à un gestionnaire d'événements personnalisé dans jQuery en fournissant un argument supplémentaire à la méthode .trigger (). Cet argument peut être n'importe quel objet JavaScript. Voici un exemple:
$ (document) .trigger ('myCustomevent', {key: 'value'});
Dans cet exemple, l'objet {key: 'value'} est transmis au gestionnaire d'événements.
Vous pouvez gérer un événement personnalisé dans jQuery en utilisant la méthode .on (). Voici un exemple:
$ (document) .on ('myCustomevent', fonction (événement, données) {
console.log (data.key); // 'value'
}) ;
Dans cet exemple, la fonction fournie à la méthode .on () est le gestionnaire d'événements.
Oui, vous pouvez empêcher un événement personnalisé de se propager dans jQuery en appelant la méthode .stoppropagation () sur l'objet événement. Voici un exemple:
$ (document) .on ('myCustomevent', fonction (événement) {
event.stoppropagation ();
});
Dans cet exemple , la méthode stoppropagation () empêche l'événement de bouillonner l'arbre Dom.
Oui, vous pouvez empêcher l'action par défaut d'un événement personnalisé dans jQuery en appelant la méthode .PreventDefault () sur l'objet Event. Voici un exemple:
$ (document) .on ('myCustomevent', fonction (événement) {
event.PreventDefault ();
});
Dans cet exemple , la méthode empêcherdefault () empêche l'action par défaut associée à l'événement.
Oui, vous ne pouvez déclencher un événement personnalisé qu'une seule fois dans jQuery en utilisant la méthode .one () au lieu de la méthode .on (). Voici un exemple:
$ (document) .one ('myCustomevent', function () {
console.log ('Ceci ne sera enregistré qu'une seule fois.');
});
Dans cet exemple, le gestionnaire d'événements ne sera appelé qu'une seule fois, même si «myCustomevent» est déclenché plusieurs fois.
Oui, vous pouvez supprimer un gestionnaire d'événements personnalisé dans jQuery en utilisant la méthode .off (). Voici un exemple:
$ (document) .off ('myCustomevent');
Dans cet exemple, tous les gestionnaires de «myCustomevent» sur le document sont supprimés.
Oui, vous pouvez déclencher un événement personnalisé manuellement dans jQuery en utilisant la méthode .trigger (). Voici un exemple:
$ (document) .trigger («myCustomevent»);
Dans cet exemple, «MyCustomevent» est déclenché manuellement.
Oui, vous pouvez lier plusieurs gestionnaires à un événement personnalisé en jQuery en appelant la méthode .on () plusieurs fois avec le même nom d'événement. Voici un exemple:
$ (document) .on ('myCustomevent', function () {
console.log ('handler 1');
});
$ (document) .on ('myCustomevent', function () {
console.log ('Handler 2 ');
});
Dans cet exemple, les deux gestionnaires seront appelés lorsque «MyCustomevent» sera déclenché.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!