>웹 프론트엔드 >JS 튜토리얼 >jQuery의 요소에 바인딩된 이벤트 핸들러 목록을 검색하는 방법은 무엇입니까?

jQuery의 요소에 바인딩된 이벤트 핸들러 목록을 검색하는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-07 22:59:03859검색

How to Retrieve a List of Event Handlers Bound to an Element in jQuery?

jQuery에서 요소에 바인딩된 이벤트 핸들러 목록 얻기

두 이벤트가 연결되는 ID가 "elm"인 HTML 요소를 고려하세요. 핸들러가 첨부됩니다. 하나는 클릭 이벤트용이고 다른 하나는 마우스오버 이벤트용입니다. 이 요소와 관련된 모든 이벤트 핸들러 목록을 얻는 것이 바람직할 수 있습니다.

최신 버전의 jQuery에서 이를 수행하려면 $._data 메소드를 활용할 수 있습니다. 이 메서드는 jQuery에 바인딩된 모든 이벤트를 포함하여 jQuery 개체와 관련된 내부 데이터에 대한 액세스를 제공합니다. 그러나 $._data는 내부용으로만 사용된다는 점에 유의하는 것이 중요합니다.

다음 코드는 $._data를 사용하여 ID가 ​​"elm"인 요소에 바인딩된 이벤트를 나열하는 방법을 보여줍니다.

// Bind event handlers to element
$('#elm').click(_f);
$('#elm').mouseover(_m);

// Retrieve events bound to element
$._data($('#elm')[0], "events");

$._data의 결과는 모든 바인딩된 이벤트를 포함하는 개체가 됩니다. 각 이벤트에 대해 개체 속성은 이벤트 유형에 해당하고 값은 이벤트 핸들러 배열에 해당합니다.

이벤트 핸들러를 더 자세히 분석하려면 Chrome에서 핸들러 기능을 마우스 오른쪽 버튼으로 클릭하고 "함수 정의를 봅니다." 이 작업을 통해 사용자 코드에서 핸들러가 정의된 정확한 위치가 드러납니다.

위 내용은 jQuery의 요소에 바인딩된 이벤트 핸들러 목록을 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.