이 글은 주로 버블링에 비해 이벤트 버블링의 코드 분석을 소개합니다. 이제 이를 공유합니다. 도움이 필요한 친구들이 참고할 수 있습니다.
버블의 개념은 이벤트를 트리거하는 것입니다. . 해당 조상 요소도 동일한 이벤트를 트리거합니다
(동일한 이벤트가 필수 상위 요소에도 추가됩니다)
eg: 아들이 onclick을 갖고 조상 18세대도 onclick을 갖습니다
아들이 클릭될 때 ,조상 18세대의 클릭 이벤트도 발생합니다
가끔 이런 상황이 발생하면 많은 문제가 발생할 수 있으니 버블링을 방지해야 합니다
클릭한 요소만 이벤트를 발생시킵니다
모든 이벤트가 버블링되는 것은 아닙니다
Onblur onfocus onload onerror 없음
실제로 이벤트 트리거에는 세 가지 프로세스가 있습니다. 캡처 단계 ---> 대상 단계에서 ----> 버블링 단계
표준 브라우저 버블 순서 하위 요소 --> 부모 --> body-->document--->window
IE 자식 요소-->parent-->body-->document
다음으로 코드는 매우 쉽습니다. 호환성 과정
<!doctype html> <html> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content=""> <meta name="Keywords" content=""> <meta name="Description" content=""> <title>阻止冒泡</title> </head> <body> <input type="button" id="cancelBubble" value="取消冒泡"/> <script type="text/javascript"> var btn=document.getElementById("cancelBubble"); document.onclick=function(){ alert("冒泡"); } btn.onclick=function(event){ var event=event||window.event;//兼容 if(event && event.stopPropagation){ event.stopPropagation(); } else{ //IE 678 event.cancelBubble=true; } alert("没有冒泡"); } </script> </body> </html>
위 내용은 모두의 학습에 도움이 되기를 바랍니다. 더 많은 관련 내용은 PHP 중국어 홈페이지를 주목해주세요!
관련 권장사항:
NodeJS가 메시지 큐를 운영하는 방법 분석 RabbitMQ
JavaScript가 파일 다운로드 기능을 구현하는 방법
위 내용은 이벤트 버블링 비율의 코드 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!