보통 자식노드부터 상향이나 하향으로 연쇄적으로 이벤트가 발생하는 것을 버블링, 캡쳐링이라한다.
이러한 현상은 웹 애플리케이션을 만들때 치명적인 부분으로 작용할 수 있으므로 반드시 제거해야하는 부분 중 하나인데, 이때 바로 이벤트를 구현할 때 객체전달이 필요한지 알 수 있을 것이다.
관련코드는 이러하다.
document.getElementById('test').onclick - function (e) {
var event = e || window.event; // 객체 전달
alert('testsetestestsets123123123');
event.cancelBubble = true; //값 변경 -> 보통 IE에서만 실행된다. IE9부터는 아래와 위 모두 가능
if(event.stopPropagation) {
event.stopPropagation(); //메서드 실행, IE를 제외한 모든 브라우저 기준
}
};
참고 하시길 ㅎ
'웹 프로그래밍 > 웹' 카테고리의 다른 글
[Javascript] 마우스 휠 이벤트, 위 아래 판단하기. (0) | 2014.12.17 |
---|---|
[WEB/Javascript] mouseover 이벤트와 mouseenter 이벤트 (0) | 2014.12.07 |
[Web/Jquery] 문서 객체 조작 (0) | 2014.03.01 |
[Web/Jquery] 기본 선택자 (0) | 2014.02.28 |
[Javascript] 예외 처리하기 (0) | 2014.02.27 |