Что такое бурлящее событие?
То есть, когда несколько элементов div вложены; то есть устанавливается связь родитель-потомок. Когда родительский элемент div и дочерний элемент div присоединяются к событию onclick, когда запускается событие onclick дочернего элемента div, дочерний элемент div выполняет соответствующее действие. js-операция. Но событие onclick родительского div также будет вызвано. Это приводит к множеству уровней параллелизма событий, что приводит к хаосу на страницах. Это бурное событие.
Как устранить всплески событий
Предотвращение всплытия событий JavaScript (cancelBubble, stopPropagation)
Следующий фрагмент кода может очень хорошо объяснить, что такое эффект пузырька и что такое его устранение?
Скопируйте код кода следующим образом:
<html>
<голова>
<title> Предотвратить всплывание событий JavaScript (cancelBubble, stopPropagation)</title>
<meta name="keywords" content="JavaScript, всплывание событий, cancelBubble, stopPropagation" />
<тип сценария="текст/javascript">
функция doSomething (obj,evt) {
оповещение (obj.id);
var e=(evt)?evt:window.event; //Определяем тип браузера и используем cancelBubble в браузерах на основе ядра IE
если (окно.событие) {
e.cancelBubble=истина;
} еще {
//e.preventDefault(); //Поддержка метода stopPropagation в браузерах на основе ядра Firefox
е.stopPropagation();
}
}
</скрипт>
</голова>
<тело>
<div id="parent1" onclick="alert(this.id)">
<p>Это элемент родительского элемента 1.</p>
<div id="child1" onclick="alert(this.id)">
<p>Это ребенок1.</p>
</div>
<p>Это элемент родительского элемента 1.</p>
</div>
<br />
<div id="parent2" onclick="alert(this.id)">
<p>Это div-родитель2.</p>
<div id="child2" onclick="doSomething(this,event);">
<p>Это ребенок2.</p>
</div>
<p>Это div-родитель2.</p>
</div>
</тело>
</html>
После прямого копирования кода, когда вы нажмете на child1, появится не только диалоговое окно child1, но и диалоговое окно Parent1.
Это бурлящее событие
Но при нажатии chile2 появится только child2, но не родительский элемент2. Это результат применения специальных эффектов, которые предотвращают всплывание событий.