2012-04-02 3 views
4

크롬 확장 프로그램을 만들어 Gmail에 자바 스크립트 암호화 기능을 추가하고 개인용으로 사용하고 있습니다. $('#elmId').clone(true)을 수행하여 이미 Gmail 인터페이스에서 버튼을 복제하려고 시도 할 때를 제외하고는 대부분 작동합니다. 이벤트 리스너를 복제하지 않습니다. 또한 $('#elmId').data('events')은 아무 것도 나오지 않습니다. 버튼에 여러 이벤트 리스너가 있다는 것을 알고 있습니다. 개발자 도구에서 요소를 검사 할 때 "이벤트 리스너"탭 (클릭 http://i.stack.imgur.com/9KnIW.png & 참조) 아래에 클릭, 마우스 오버 등이 있음을 보여주기 때문입니다. 이것은 가능한가? 나는 꽤 많은 검색을했고 아무 것도 생각 나지 않았다. 이 작업을 수행하는 방법이나 가능한 경우에 대한 아이디어가 있습니까?어떻게 요소를 복제하고 이벤트 리스너를 보존 할 수 있습니까?

답변

-1

기술적으로 이벤트 리스너의 복제가 가능하다고해도 그것이 의미있는 것은 아닙니다. 리스너는 onclick 핸들러가 요소 x를 제거,이 경우 예를

x.onclick = function(){document.body.removeChild(x);} 

의 다른 요소에서 작동하지 않을 같은 폐쇄를 사용하여 요소에 대해 알고 폐쇄 ... 수 있지만 경우에 할 수있다 요소를 복사하면 사본을 클릭하는 핸들러가 여전히 원본을 닫습니다.

관련 문제