Maison interface Web js tutoriel Apprenez les principes du bouillonnement d'événements de clic et comment l'utiliser dans le développement Web.

Apprenez les principes du bouillonnement d'événements de clic et comment l'utiliser dans le développement Web.

Jan 13, 2024 pm 12:47 PM
网页开发 bulle événement de clic

Apprenez les principes du bouillonnement dévénements de clic et comment lutiliser dans le développement Web.

Comprendre le principe du bouillonnement d'événements de clic et son application dans le développement Web

Dans le développement Web, l'interaction avec les utilisateurs est souvent impliquée. Parmi eux, les événements constituent l’un des mécanismes importants permettant d’obtenir cet effet interactif. Parmi ces événements, l’événement de clic est le plus utilisé. Apprendre à comprendre le principe du bouillonnement d'événements de clic et son application dans le développement Web permet de mieux comprendre le mécanisme des événements et d'obtenir une expérience d'interaction utilisateur plus riche.

1. Le principe du bouillonnement d'événement de clic

Lorsqu'un événement se produit sur un élément, si l'élément a un élément parent et que l'élément parent est également lié au même type d'événement, alors l'événement sera déclenché à partir du élément enfant un par un. Les niveaux remontent jusqu'à l'élément parent le plus haut. Ce processus est appelé bouillonnement d’événements.

Par exemple, il existe une page Web avec la structure HTML suivante :

<div id="box">
  <button id="btn">点击</button>
</div>
Copier après la connexion

Supposons qu'un écouteur d'événement de clic soit lié à ce bouton :

document.getElementById("btn").addEventListener("click", function(){
  console.log("按钮被点击了");
});
Copier après la connexion

Lorsque l'on clique sur le bouton, la console affichera "Le bouton a été cliqué". En effet, l'événement de clic du bouton a déclenché l'écouteur.

Si nous lions un écouteur d'événement du même type à l'élément parent div :

document.getElementById("box").addEventListener("click", function(){
  console.log("div被点击了");
});
Copier après la connexion

De cette façon, lorsque l'on clique sur le bouton, non seulement "le bouton est cliqué" est affiché, mais "div est cliqué" est également affiché . En effet, une fois l'événement click déclenché sur le bouton, il continuera à remonter jusqu'à l'élément parent div.

2. Application du bouillonnement d'événement de clic

  1. Amélioration de la maintenabilité et de l'évolutivité du code

En cliquant sur le bouillonnement d'événement, nous pouvons lier un écouteur d'événement à l'élément parent sans lier les auditeurs d'événement à chaque élément enfant séparément. Cela peut réduire considérablement la quantité de code et faciliter la maintenance et l’expansion.

Par exemple, supposons qu'il existe une liste ul contenant plusieurs éléments li. Pour y parvenir, lorsqu'un élément li est cliqué, sa couleur d'arrière-plan est modifiée. Nous pouvons écrire le code comme ceci :

<ul id="list">
  <li>选项1</li>
  <li>选项2</li>
  <li>选项3</li>
</ul>
Copier après la connexion
var lis = document.getElementById("list").getElementsByTagName("li");
for(var i=0; i<lis.length; i++){
  lis[i].addEventListener("click", function(){
    this.style.backgroundColor = "red";
  });
}
Copier après la connexion

Cependant, si nous devons ajouter de nouveaux éléments li plus tard, nous devons le conserver à nouveau dans le code JavaScript. Et si nous utilisons le bouillonnement d'événements, il nous suffit de lier un écouteur d'événement à l'élément ul :

document.getElementById("list").addEventListener("click", function(e){
  if(e.target.tagName.toLowerCase() === "li"){
    e.target.style.backgroundColor = "red";
  }
});
Copier après la connexion

Peu importe le nombre d'éléments li, nous n'avons besoin que d'un seul écouteur, et nous pouvons utiliser le mécanisme de bouillonnement d'événements pour l'activer. l'élément parent Capturez l'événement, puis déterminez sur quel élément enfant vous avez cliqué en fonction de la source de l'événement.

  1. Mettre en œuvre la délégation d'événements

En utilisant le bouillonnement d'événements, nous pouvons implémenter la fonction de délégation d'événements. La délégation d'événements fait référence au transfert des événements d'un élément à son élément parent ou à un élément de niveau supérieur pour traitement. Cela réduit le nombre d'écouteurs et facilite la liaison dynamique.

Par exemple, disons que nous avons un tableau et que lorsque la souris passe sur une cellule, la couleur d'arrière-plan de cette cellule change. Nous pouvons écrire le code comme ceci :

<table id="table">
  <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
  </tr>
  <tr>
    <td>4</td>
    <td>5</td>
    <td>6</td>
  </tr>
</table>
Copier après la connexion
var tds = document.getElementById("table").getElementsByTagName("td");
for(var i=0; i<tds.length; i++){
  tds[i].addEventListener("mouseover", function(){
    this.style.backgroundColor = "yellow";
  });
  tds[i].addEventListener("mouseout", function(){
    this.style.backgroundColor = "white";
  });
}
Copier après la connexion

Cependant, si nous devons ajouter de nouvelles cellules plus tard, nous devons le conserver à nouveau dans le code JavaScript. Et si nous utilisons le bouillonnement d'événements, il nous suffit de lier un écouteur d'événement à l'élément table :

document.getElementById("table").addEventListener("mouseover", function(e){
  if(e.target.tagName.toLowerCase() === "td"){
    e.target.style.backgroundColor = "yellow";
  }
});
document.getElementById("table").addEventListener("mouseout", function(e){
  if(e.target.tagName.toLowerCase() === "td"){
    e.target.style.backgroundColor = "white";
  }
});
Copier après la connexion

En jugeant la source de l'événement, nous pouvons éviter de lier un écouteur à chaque cellule. Cela réduit le nombre d'écouteurs et facilite la liaison dynamique.

En bref, comprendre le principe du bouillonnement d'événements de clic et son application dans le développement Web peut améliorer la maintenabilité et l'évolutivité du code, tout en réalisant la fonction de délégation d'événements. Dans le même temps, la diffusion d’événements peut également mieux contrôler et gérer les interactions des utilisateurs. Dans le développement Web réel, une compréhension approfondie et une utilisation flexible du mécanisme de bouillonnement des événements de clic amélioreront considérablement l'efficacité du développement et l'expérience utilisateur.

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Dead Rails - Comment apprivoiser les loups
4 Il y a quelques semaines By DDD
Niveaux de force pour chaque ennemi et monstre de R.E.P.O.
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
<🎜>: Grow A Garden - Guide de mutation complet
2 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1658
14
Tutoriel PHP
1257
29
Tutoriel C#
1231
24
Comment utiliser PHP pour développer une fonction d'actualisation programmée pour les pages Web Comment utiliser PHP pour développer une fonction d'actualisation programmée pour les pages Web Aug 17, 2023 pm 04:25 PM

Comment utiliser PHP pour développer une fonction d'actualisation programmée des pages Web Avec le développement d'Internet, de plus en plus de sites Web ont besoin de mettre à jour les données d'affichage en temps réel. L'actualisation de la page en temps réel est une exigence courante, qui permet aux utilisateurs d'obtenir les données les plus récentes sans actualiser la page entière. Cet article explique comment utiliser PHP pour développer une fonction d'actualisation planifiée pour les pages Web et fournit des exemples de code. Le moyen le plus simple de mettre en œuvre l’actualisation programmée à l’aide de la balise Meta consiste à utiliser la balise HTML Meta pour actualiser régulièrement la page. En HTML&lt;head&gt;

Quels sont les principaux domaines d'application de JavaScript ? Quels sont les principaux domaines d'application de JavaScript ? Mar 23, 2024 pm 05:42 PM

Quels sont les principaux domaines d’application de JavaScript ? JavaScript est un langage de script largement utilisé dans le développement Web pour ajouter de l'interactivité et des effets dynamiques aux pages Web. En plus d’être largement utilisé dans le développement Web, JavaScript peut également être utilisé dans divers autres domaines. Les principaux domaines d'application de JavaScript et les exemples de code correspondants seront présentés en détail ci-dessous. 1. Développement Web Le domaine d'application le plus courant de JavaScript est le développement Web, via Java.

HTML vs CSS vs JavaScript: un aperçu comparatif HTML vs CSS vs JavaScript: un aperçu comparatif Apr 16, 2025 am 12:04 AM

Les rôles de HTML, CSS et JavaScript dans le développement Web sont: HTML est responsable de la structure du contenu, CSS est responsable du style et JavaScript est responsable du comportement dynamique. 1. HTML définit la structure et le contenu de la page Web via des balises pour assurer la sémantique. 2. CSS contrôle le style de page Web via des sélecteurs et des attributs pour le rendre beau et facile à lire. 3. JavaScript contrôle le comportement de la page Web via les scripts pour atteindre des fonctions dynamiques et interactives.

Maîtriser le mécanisme de bouillonnement d'événements commun en JavaScript Maîtriser le mécanisme de bouillonnement d'événements commun en JavaScript Feb 19, 2024 pm 04:43 PM

Événements de bouillonnement courants en JavaScript : Pour maîtriser les caractéristiques de bouillonnement des événements courants, des exemples de code spécifiques sont nécessaires. Introduction : En JavaScript, le bouillonnement d'événements signifie que l'événement se propagera de l'élément ayant le niveau d'imbrication le plus profond vers l'élément externe jusqu'à ce qu'il se propage vers. L'élément parent le plus externe. Comprendre et maîtriser les événements bouillonnants courants peut nous aider à mieux gérer l'interaction des utilisateurs et la gestion des événements. Cet article présentera quelques événements de bouillonnement courants et fournira des exemples de code spécifiques pour aider les lecteurs à mieux comprendre. 1. Cliquez sur événement (cliquez sur

Scénarios d'application pratiques des attributs globaux HTML : 5 conseils pour améliorer l'efficacité du développement Web Scénarios d'application pratiques des attributs globaux HTML : 5 conseils pour améliorer l'efficacité du développement Web Feb 18, 2024 pm 05:35 PM

Cas d'application pratiques des attributs globaux HTML : 5 conseils pour améliorer l'efficacité du développement de pages Web. HTML, en tant que langage de balisage pour créer la structure de pages Web, possède de nombreux attributs globaux, qui peuvent être appliqués à différents éléments pour obtenir différentes fonctions et effets. Dans le processus de développement Web, l'utilisation rationnelle de ces attributs globaux peut grandement améliorer l'efficacité du développement. Cet article vous présentera 5 cas d’application pratiques et joindra des exemples de code correspondants. Application des attributs de classe : la modification par lots des attributs de classe de style peut être attribuée aux éléments HTML

Application et pratique de ChatGPT PHP dans le développement de sites Web Application et pratique de ChatGPT PHP dans le développement de sites Web Oct 27, 2023 pm 06:40 PM

Application et pratique de ChatGPTPHP dans le développement de sites Web Introduction : Avec le développement continu de la technologie de l'intelligence artificielle, Chatbot est devenu un sujet brûlant de préoccupation pour de nombreux développeurs de sites Web. Le chatbot peut avoir des conversations instantanées avec les utilisateurs, améliorant considérablement l'expérience utilisateur et joue un rôle important dans le service client, le marketing, l'interaction d'informations, etc. ChatGPT est une boîte à outils Chatbot basée sur le modèle ouvert AIGPT-3, qui peut aider les développeurs PHP à créer rapidement des systèmes de dialogue intelligents.

Quels événements JS ne sont pas propagés vers le haut ? Quels événements JS ne sont pas propagés vers le haut ? Feb 19, 2024 am 08:17 AM

Quels événements JS ne bouillonneront pas ? En JavaScript, le bouillonnement d'événements signifie que lorsqu'un élément déclenche un événement, l'événement remonte vers les éléments de niveau supérieur jusqu'à ce qu'il bouillonne jusqu'au nœud racine du document. Les gestionnaires d'événements sont ensuite exécutés dans l'ordre dans lequel ils apparaissent. Cependant, tous les événements ne surviennent pas. Certains événements n'exécuteront le gestionnaire d'événements sur l'élément cible qu'après avoir été déclenchés, sans remonter aux éléments de niveau supérieur. Voici quelques événements courants qui ne font pas de bulles : événements de mise au point et de flou :

Pourquoi le même événement déclenche-t-il deux fois le bouillonnement ? Pourquoi le même événement déclenche-t-il deux fois le bouillonnement ? Feb 19, 2024 pm 10:34 PM

Pourquoi le même événement bouillonnant se produit-il deux fois ? La diffusion d'événements est un mécanisme de diffusion d'événements courant dans les navigateurs. Lorsqu'un élément déclenche un événement, l'événement sera transmis de l'élément déclenché aux éléments supérieurs dans l'ordre jusqu'à ce qu'il soit transmis à l'élément racine du document. Ce processus est comme des bulles bouillonnant dans l’eau, c’est pourquoi on l’appelle bouillonnement événementiel. Cependant, nous constatons parfois que le même événement bouillonnant se produit deux fois. Pourquoi ? Il y a deux raisons principales : l'inscription à l'événement et le traitement de l'événement. Premièrement, nous devons préciser que l'événement

See all articles