2017. 2. 2. 15:19
FRONT-END/Javascript
이벤트 발생 순서
만약에, 동일 엘리먼트에 다른 클릭 이벤트가 걸려 있으면 뭐 부터 실행이 될까?
-> 이벤트 버블링에 의해 자식 노드에 걸린 이벤트부터 실행이 된다.
예를들어,
$('body').delegate('.btnConfirm', 'click', function (e) { alert('body'); });
$('html').delegate('.btnConfirm', 'click', function (e) { alert('html'); });
$('.btnConfirm').click(function (e) { alert('btnConfirm'); });
이런 식으로 되어있을 경우 실행 결과는
' btnConfirm -> body -> element '가 된다.
이때, 특정 이벤트를 실행하고 그 이후 이벤트는 실행되지 않도록 하고 싶다면
e.stopPropagation() 메서드를 이용해서 실행을 막을 수 있다.
(ie는 cancelbubble속성값 true로 변경)
'FRONT-END > Javascript' 카테고리의 다른 글
parseInt(0.0000001) = 1, parseInt(0.000001) = 0인 이유 (0) | 2018.04.19 |
---|---|
var methodName = function(){} vs function methodName(){} 차이 (0) | 2017.01.13 |
자바스크립트 튜토리얼 (0) | 2017.01.13 |