2014-02-11 2 views
1

나는이 같은 비트 보이는 jQuery를 사용하여 자바 스크립트의 조각이 있습니다클릭시, 후속 클릭시 실행되도록 이벤트 처리기를 설정하려면 어떻게해야합니까?

$('.myclass').on('click', function() { 
    // Do Stuff 
    $(document).on('click.mynamespace', function() { 
     // Do More Stuff 
     $(document).off('click.mynamespace'); 
    }); 
}); 

.myclass에 클릭하면, 나는이 물건을 할 것으로 기대하고있다을 한 후 문서에 클릭 이벤트 핸들러를 첨부 에서 더 많은 작업을 수행하십시오. 클릭 -하지만 첫 번째 클릭에서 물건 및 추가 기능이 모두 발생하는 것으로 보입니다.

두 번째 이벤트 처리기가 연결될 때 계속 클릭 이벤트가 발생합니까? 원하는 효과를 얻으려면 어떻게해야합니까?

답변

0

첫 번째 클릭에 문서에 밖으로 버블 링에서 이벤트를 방지하기 위해 stopPropagation를 호출보십시오 :

$('.myclass').on('click', function(e) { 
    e.stopPropagation(); 
    // Do Stuff 
    $(document).on('click.mynamespace', function() { 
     // Do More Stuff 
     $(document).off('click.mynamespace'); 
    }); 
}); 
관련 문제