복붙노트

[JQUERY] 내가 jQuery로 요소에 바인딩 이벤트를 찾을 수 있습니까?

JQUERY

내가 jQuery로 요소에 바인딩 이벤트를 찾을 수 있습니까?

해결법


  1. 1.jQuery를 현대 버전에서는 문제의 요소에 jQuery를에 의해 연결된 모든 이벤트를 찾기 위해 $ ._ 데이터 방법을 사용합니다. 참고 이것은 내부에서만 사용 방법 :

    jQuery를 현대 버전에서는 문제의 요소에 jQuery를에 의해 연결된 모든 이벤트를 찾기 위해 $ ._ 데이터 방법을 사용합니다. 참고 이것은 내부에서만 사용 방법 :

    // Bind up a couple of event handlers
    $("#foo").on({
        click: function(){ alert("Hello") },
        mouseout: function(){ alert("World") }
    });
    
    // Lookup events for this particular Element
    $._data( $("#foo")[0], "events" );
    

    $ ._ 데이터에서 결과는 우리가 (가 확장로 마우스 속성을 아래 그림) 세트 이벤트를 모두 포함하는 개체있을 것입니다 :

    그리고 크롬, 당신은 바로 핸들러 함수를 클릭하고 당신이 당신의 코드에서 정의 된 정확한 지점을 표시하는 "보기 기능 정의"를 클릭 할 수 있습니다.


  2. 2.일반적인 경우 :

    일반적인 경우 :

    마찬가지로, 당신은 할 수 있습니다 :


  3. 3.나는 후손이를 추가 해요; 더 JS를 작성 포함하지 않는 쉬운 방법이있다. 파이어 폭스의 놀라운 불을 지르고의 부가 기능을 사용하여,

    나는 후손이를 추가 해요; 더 JS를 작성 포함하지 않는 쉬운 방법이있다. 파이어 폭스의 놀라운 불을 지르고의 부가 기능을 사용하여,


  4. 4.이제 단순히 자바 스크립트 기능 getEventListeners를 사용하여 개체에 바인딩 이벤트 리스너의리스트를 얻을 수있다 ().

    이제 단순히 자바 스크립트 기능 getEventListeners를 사용하여 개체에 바인딩 이벤트 리스너의리스트를 얻을 수있다 ().

    예를 들어, 개발 도구 콘솔에서 다음을 입력합니다 :

    // Get all event listners bound to the document object
    getEventListeners(document);
    

  5. 5.JQuery와 감사 플러그인 플러그인은 일반 크롬 개발 도구를 통해이 작업을 수행 할 수 있도록해야한다. 이건 완벽한 건 아니지만, 그것은 당신이 요소 / 이벤트에 바인딩 실제 핸들러뿐 아니라 일반 jQuery를 핸들러를 볼 수 있도록해야한다.

    JQuery와 감사 플러그인 플러그인은 일반 크롬 개발 도구를 통해이 작업을 수행 할 수 있도록해야한다. 이건 완벽한 건 아니지만, 그것은 당신이 요소 / 이벤트에 바인딩 실제 핸들러뿐 아니라 일반 jQuery를 핸들러를 볼 수 있도록해야한다.


  6. 6.이 파이어 폭스 양자 58.x에서의 jQuery 선택기 / 객체, 정확히 특정 아니지만, 당신은 개발 도구를 사용하여 요소에 이벤트 핸들러를 찾을 수 있습니다 :

    이 파이어 폭스 양자 58.x에서의 jQuery 선택기 / 객체, 정확히 특정 아니지만, 당신은 개발 도구를 사용하여 요소에 이벤트 핸들러를 찾을 수 있습니다 :


  7. 7.내가 만약 ($ ._ 데이터 ($ ( "a.wine 항목 링크") [0]). 이벤트 == NULL) {... 거의 바인드 자신의 이벤트 핸들러 다시 무언가를} 확인하려면이 같은 것을 사용 내 요소는 어떤 이벤트에 바인딩 된 경우. 당신이 그 요소에서 연결되지 않은 모든 이벤트 핸들러가있는 경우 아직 (널)를 정의되지 말 것입니다. 그건 내가 만약 표현이 평가하고 이유입니다.

    내가 만약 ($ ._ 데이터 ($ ( "a.wine 항목 링크") [0]). 이벤트 == NULL) {... 거의 바인드 자신의 이벤트 핸들러 다시 무언가를} 확인하려면이 같은 것을 사용 내 요소는 어떤 이벤트에 바인딩 된 경우. 당신이 그 요소에서 연결되지 않은 모든 이벤트 핸들러가있는 경우 아직 (널)를 정의되지 말 것입니다. 그건 내가 만약 표현이 평가하고 이유입니다.


  8. 8.이벤트가 문서 자체보다는 문제의 요소에 부착 될 수 있습니다. 이 경우, 당신은 사용할 수 있습니다 :

    이벤트가 문서 자체보다는 문제의 요소에 부착 될 수 있습니다. 이 경우, 당신은 사용할 수 있습니다 :

    $._data( $(document)[0], "events" );
    

    그리고 올바른 선택과 이벤트를 찾을 수 있습니다 :

    그리고 핸들러에서 찾는다> [[FunctionLocation]


  9. 9.$ ._ 데이터 : 나는 $이 같은 ._ 데이터 조금 복잡한 DOM 쿼리를 전달하는 경우 ($ ( '# outerWrap .innerWrap UL 리 : 마지막으로')를, '이벤트') 그것은 브라우저 콘솔에서 정의되지 않은 던졌습니다.

    $ ._ 데이터 : 나는 $이 같은 ._ 데이터 조금 복잡한 DOM 쿼리를 전달하는 경우 ($ ( '# outerWrap .innerWrap UL 리 : 마지막으로')를, '이벤트') 그것은 브라우저 콘솔에서 정의되지 않은 던졌습니다.

    내가 부모 DIV에 $ ._ 데이터를 사용했다 그래서 : $ ._ 데이터 ($ ( '#의 outerWrap') [0], '이벤트')는 A 태그에 대한 이벤트를 볼 수 있습니다. http://jsfiddle.net/giri_jeedigunta/MLcpT/4/ : 여기에 같은위한 JSFiddle입니다

  10. from https://stackoverflow.com/questions/2008592/can-i-find-events-bound-on-an-element-with-jquery by cc-by-sa and MIT license