Maison interface Web js tutoriel Explication détaillée de l'événement bouillonnant Js et blocage des compétences example_javascript

Explication détaillée de l'événement bouillonnant Js et blocage des compétences example_javascript

May 16, 2016 pm 04:54 PM
événement bouillonnant 阻止

Le mécanisme de bouillonnement JS signifie que si un élément définit un événement A, tel qu'un événement de clic, et si l'événement est déclenché et que l'événement de bouillonnement n'est pas bloqué, l'événement se propagera à l'élément parent et déclenchera la fonction de clic du parent. classe.
Comme le montre l'exemple suivant :

Copiez le code Le code est le suivant :



<script> e) { <br> alert('innerdouble'); <br>stopBubble(e); <br>} <br><br>function ialerttrois(e) { <br>alert('innertrois'); stopBubbleDouble(e); <br>} <br><br>function stopBubble(e) { <br>var evt = e||window.event; <br>evt.stopPropagation?evt.stopPropagation():(evt. CancelBubble=true);/ /Arrêter de bouillonner <br>} <br><br>function stopBubbleDouble(e) { <br>var evt = e||window.event; <br>evt.stopPropagation?evt.stopPropagation() :(evt.cancelBubble =true);//Empêcher les bulles<br>evt.preventDefault();//Empêcher le comportement par défaut du navigateur afin que le lien ne saute pas<br>} <br><br>$(function( ) { <br>//Méthode 1<br>//$('#jquerytest').click(function(event) { <br>// alert('innerfour'); <br>// event.stopPropagation( ); <br>// event.preventDefault(); <br>//}); <br><br>//Méthode 2<br>$('#jquerytest').click(function() { <br>alert( 'innerfour'); <br>return false <br>}); <br></script> "> sans
milieu
inner

< div onclick="ialertdouble(event)">innerdouble

innertrois< ;/a>


innerfour< /p>






Lorsque vous cliquez sur intérieur, « intérieur », « milieu » apparaîtra en séquence et « sans ». C’est un événement bouillonnant.

Intuitivement, c'est également le cas, car la zone la plus interne se trouve dans le nœud parent. Cliquer sur la zone du nœud enfant clique en fait sur la zone du nœud parent, donc l'événement le propagera. .

En fait, bien souvent, nous ne voulons pas que des événements éclatent, car cela déclencherait plusieurs événements en même temps.

Suivant : on clique sur innerdouble. Vous constaterez qu'elle ne fait pas de bulle car elle appelle la méthode stopBubble() dans la méthode appelante ialertdouble(). La méthode empêche le bulle en déterminant le type de navigateur (c'est-à-dire qu'elle utilise cancleBubble(), Firefox utilise stopProgation()).

Mais s'il s'agit d'un lien, nous constaterons qu'il empêchera également le bullage, mais sautera. C'est le comportement par défaut du navigateur. Vous devez utiliser la méthode PreventDefault() pour l'empêcher. Voir ialerttrois() pour plus de détails.

Actuellement, la méthode courante consiste à utiliser jquery pour lier les événements de clic. Dans ce cas, ce sera beaucoup plus simple.

On peut passer le paramètre event en cliquant sur l'événement, puis directement

event.stopPropagation(
event.preventDefault(); //Pas besoin d'ajouter ceci if il n'y a pas de lien.

C'est tout.

Le framework est bon, mais il existe en fait un moyen plus simple, en renvoyant false dans le gestionnaire d'événements. Il s'agit d'un moyen abrégé d'appeler stopPropagation() et PreventDefault() sur l'objet événement en même temps.
[Voir le code détaillé ci-dessus, pensez à charger jquery.js. ]

En fait, vous pouvez également ajouter un jugement à chaque événement de clic :




Copier le code
Le code est tel suit : $('#id').click(function(event){ if(event.target==this){
//faire quelque chose
}
})


Analyse : La variable événement dans le gestionnaire d'événements stocke l'objet événement. L'attribut event.target stocke l'élément cible où l'événement s'est produit. Cet attribut est spécifié dans l'API DOM, mais n'est pas implémenté par tous les navigateurs. jQuery apporte les extensions nécessaires à cet objet événement afin que cette propriété puisse être utilisée dans n'importe quel navigateur. Avec .target, vous pouvez déterminer l'élément du DOM qui a reçu l'événement en premier (c'est-à-dire l'élément sur lequel on a réellement cliqué). De plus, nous savons que cela fait référence à l'élément DOM qui gère l'événement, nous pouvons donc écrire le code ci-dessus.

Cependant, il est recommandé d'utiliser return false si Jquery lie des événements.
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

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 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)

Comment bloquer l'accès aux sites Web dans Edge Comment bloquer l'accès aux sites Web dans Edge Jul 12, 2023 am 08:17 AM

Parfois, nous souhaitons bloquer certains sites Web sur Microsoft Edge pour de nombreuses raisons, que ce soit pour le contrôle parental, la gestion du temps, le filtrage de contenu ou encore des problèmes de sécurité. Une motivation courante est d’être plus productif et de rester concentré. En bloquant les sites Web distrayants, les utilisateurs peuvent créer un environnement propice au travail ou aux études, minimisant ainsi les distractions potentielles. Enfin, le filtrage du contenu est important pour maintenir un environnement en ligne sûr et respectueux. Le blocage des sites Web contenant du contenu explicite, offensant ou répréhensible est particulièrement important dans les milieux éducatifs ou professionnels où le respect de normes et de valeurs appropriées est crucial. Si vous pouvez comprendre cette situation, cet article est fait pour vous. Voici comment bloquer l'accès à Internet dans Edge

Comment éviter efficacement les fuites de mémoire dans les fermetures ? Comment éviter efficacement les fuites de mémoire dans les fermetures ? Jan 13, 2024 pm 12:46 PM

Comment éviter les fuites de mémoire lors des fermetures ? La fermeture est l'une des fonctionnalités les plus puissantes de JavaScript, qui permet l'imbrication de fonctions et l'encapsulation des données. Cependant, les fermetures sont également sujettes à des fuites de mémoire, en particulier lorsqu'il s'agit d'asynchrones et de minuteries. Cet article explique comment éviter les fuites de mémoire lors des fermetures et fournit des exemples de code spécifiques. Les fuites de mémoire se produisent généralement lorsqu'un objet n'est plus nécessaire, mais que la mémoire qu'il occupe ne peut pas être libérée pour une raison quelconque. Dans une fermeture, lorsqu'une fonction fait référence à des variables externes, et ces variables

Comment bloquer les messages texte sur iPhone Comment bloquer les messages texte sur iPhone Jul 31, 2023 pm 09:49 PM

Comment bloquer les SMS de quelqu’un sur iPhone ? Si vous recevez un message texte d'une personne que vous souhaitez bloquer, vous devez ouvrir le message sur votre iPhone. Une fois que vous avez ouvert le message, cliquez sur l'icône en haut avec le numéro de téléphone ou le nom de l'expéditeur en dessous. Cliquez maintenant sur Messages sur le côté droit de l'écran ; vous verrez maintenant un autre écran avec la possibilité de bloquer cet appelant. Cliquez sur ce bouton et sélectionnez Bloquer le contact. Le numéro de téléphone ne pourra plus vous envoyer de SMS ; il ne pourra également plus appeler votre iPhone. Comment débloquer les contacts bloqués sur iPhone ? Si vous décidez d'autoriser une personne bloquée à vous envoyer des messages, vous pouvez la débloquer sur votre iPhone à tout moment. Pour débloquer des contacts sur iPhone, vous devez

Quels événements ne peuvent pas éclater ? Quels événements ne peuvent pas éclater ? Nov 20, 2023 pm 03:00 PM

Les événements qui ne peuvent pas faire de bulle sont : 1. l'événement focus ; 2. l'événement flou ; 3. l'événement scroll ; 4. les événements mouseenter et mouseleave ; 5. les événements mouseover et mousemove ; 7. l'événement keypress ; ; 9. Événement DOMContentLoaded ; 10. Événements couper, copier et coller, etc.

Pas de prise en charge des événements bouillonnants : limites et portée Pas de prise en charge des événements bouillonnants : limites et portée Jan 13, 2024 pm 12:51 PM

L'événement bouillonnant (BubblingEvent) fait référence à une méthode de transmission d'événements qui est déclenchée étape par étape des éléments enfants aux éléments parents dans l'arborescence DOM. Dans la plupart des cas, les événements bouillonnants sont très flexibles et évolutifs, mais il existe des cas particuliers dans lesquels les événements ne prennent pas en charge le bouillonnement. 1. Quels événements ne prennent pas en charge le bouillonnement ? Bien que la plupart des événements prennent en charge le bouillonnement, certains événements ne le prennent pas en charge. Voici quelques événements courants qui ne prennent pas en charge le bullage : les événements de focus et de flou se chargent et se déchargent.

Pourquoi les événements ne parviennent-ils pas à bouillonner ? Pourquoi les événements ne parviennent-ils pas à bouillonner ? Jan 13, 2024 am 08:50 AM

Pourquoi les événements ne se produisent-ils pas dans certains cas ? La diffusion d'événements signifie que lorsqu'un événement sur un élément est déclenché, l'événement se propage vers le haut depuis l'élément le plus interne jusqu'à ce qu'il soit transmis à l'élément le plus externe. Mais dans certains cas, l'événement ne peut pas bouillonner, c'est-à-dire qu'il ne sera traité que sur l'élément déclenché et ne sera pas transmis aux autres éléments. Cet article présentera quelques situations courantes, expliquera pourquoi les événements ne parviennent pas à bouillonner et fournira des exemples de code spécifiques. Utilisez le modèle de capture d'événements : la capture d'événements est un autre moyen de diffusion d'événements, par opposition à la diffusion d'événements.

Comment réparer les téléchargements de logiciels bloqués dans Windows 10 Comment réparer les téléchargements de logiciels bloqués dans Windows 10 Dec 21, 2023 pm 11:58 PM

Lorsque nous utilisions le système Win10, certains amis ont rencontré un blocage inexplicable lors du téléchargement. Pour cette situation, l'éditeur pense qu'il devrait s'agir d'un problème avec le pare-feu du système. Vous pouvez essayer de définir les paramètres appropriés dans le registre pour résoudre le problème, ou utiliser le mode de compatibilité dans les propriétés pour ouvrir le logiciel, etc. pour résoudre le problème. Jetons un coup d'œil aux étapes spécifiques et détaillées avec l'éditeur ~ J'espère que cela pourra vous aider. Que faire si le téléchargement du logiciel Windows 10 est bloqué ? Méthode 1 : Mode de compatibilité 1. Cliquez avec le bouton droit sur l'application, cliquez sur « Propriétés » dans le menu, sélectionnez l'onglet « Compatibilité » et cochez la case d'option « Mode de compatibilité ». Méthode 2 : Modifiez les paramètres de sécurité. Recherchez « Paramètres » dans le coin inférieur gauche, puis « Mise à jour et sécurité » et enfin « Windows D ».

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

See all articles