Je n'ai pas vu le concept d'objets d'événement lorsque j'ai consulté le manuel auparavant. Ce que je voulais réaliser à ce moment-là était de cliquer sur une zone de texte pour afficher une zone de sélection multiple déroulante. Lorsque la zone de texte perd le focus, l'icône apparaît. L'événement Blur est déclenché, masquant ainsi la liste déroulante. Mais lorsque je souhaite sélectionner la case à sélection multiple, elle sera masquée et je ne pourrai pas la sélectionner. Cela me déprime beaucoup. Après avoir vérifié les informations pendant une journée, je suis finalement devenu flou. J'ai trouvé un événement bouillonnant sur Internet et j'ai découvert que je pouvais réaliser cette fonction en cliquant dessus.
e.stopPropagation() empêche les événements de bouillonner
Nous verrons une situation comme celle-ci : span alert -> td table alert. C’est ce qu’on appelle le bouillonnement d’événements. Autrement dit, de bas en haut, de l’intérieur vers l’extérieur, les événements se déclenchent en séquence. Les conditions qui peuvent être déclenchées séquentiellement sont plusieurs balises imbriquées avec le même événement. Tous les événements se produiront simultanément et simultanément, et la réponse au même événement sera réalisée de l'intérieur.
Que devons-nous faire parfois si nous ne voulons pas que les événements bouillonnent ?
Lorsque j'implémente l'événement de clic pour l'ensemble du document, je peux empêcher l'événement de se produire. à la zone de texte et à la zone déroulante Bulle, de sorte que lorsque vous cliquez à nouveau dessus, le document ne déclenchera pas l'événement.
Si vous souhaitez obtenir des informations liées à un événement, vous devez ajouter un objet e à la méthode de connaissance, et e est l'objet événement.
e.preventDefault() empêche le comportement par défaut de l'événement.
$("a").click( function (e ) {
alert("Le comportement par défaut est interdit");
e.preventDefault();
Test return false équivaut à appeler e.preventDefault() et e.stopPropagation() simultanément
return false En plus d'empêcher la valeur par défaut comportement, empêche également les événements de bouillonner. Si vous disposez d'un code source jquery, vous pouvez vérifier le code suivant :
Event.preventDefault();
event.stopPropagation();