Maison > interface Web > js tutoriel > Comment la délégation d'événements peut-elle améliorer les performances de Vanilla JavaScript et la simplicité du code ?

Comment la délégation d'événements peut-elle améliorer les performances de Vanilla JavaScript et la simplicité du code ?

Barbara Streisand
Libérer: 2024-11-27 14:22:10
original
835 Les gens l'ont consulté

How Can Event Delegation Improve Vanilla JavaScript Performance and Code Simplicity?

Délégation d'événements avec Vanilla JavaScript

Dans Vanilla JavaScript, la délégation d'événements est une technique utilisée pour attacher des écouteurs d'événements à un seul élément parent au lieu de éléments individuels en son sein. Cette approche améliore les performances en éliminant le besoin de plusieurs écouteurs d'événement et simplifie le code.

Délégation d'événement efficace

Pour mettre en œuvre efficacement la délégation d'événement, suivez les étapes suivantes :

  1. Recherchez l'élément parent où les événements se produiront.
  2. Ajoutez un écouteur d'événement à l'élément parent pour le type d'événement souhaité (par exemple, cliquez).
  3. Dans le gestionnaire d'événements, vérifiez si l'élément cliqué correspond à un sélecteur spécifique ou si ses éléments parents correspondent au sélecteur.
  4. Si la condition est remplie, exécuter la fonction ou l'action souhaitée.

Exemple : déléguer jQuery Code

Considérez le code jQuery suivant :

$('#main').on('click', '.focused', function() {
    settingsPanel();
});
Copier après la connexion

Pour traduire ce code en JavaScript Vanilla, utilisez ce qui suit :

document.querySelector('#main').addEventListener('click', (e) => {
    if (e.target.closest('.focused')) {
        settingsPanel();
    }
});
Copier après la connexion

Dans ce code, nous utilisons querySelector() pour trouver l'élément parent avec l'ID main et y attacher un écouteur d'événement de clic. Lorsqu'un élément de ce parent est cliqué, il vérifie si l'élément cliqué ou l'un de ses éléments parents a la classe .focused. Si tel est le cas, il invoque la fonction settingsPanel().

Avantages de la délégation :

  • Performances améliorées :Élimine le besoin de plusieurs écouteurs d'événements, réduisant le nombre de fonctions de gestion d'événements.
  • Simplifié code : Plus facile à maintenir et à comprendre que l'utilisation d'écouteurs d'événements individuels pour chaque élément.
  • Flexibilité : Permet la liaison dynamique des gestionnaires d'événements basés sur des sélecteurs, vous permettant de gérer les événements à partir d'éléments qui peuvent être ajoutés ou supprimés dynamiquement.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal