당시 내 방법은 이벤트 핸들러 함수를 추가할 때 수동으로 바인딩하는 것이었습니다. 그러나 새 버전의 jquery에는 이 기능이 추가되었습니다. 우리는 더 이상 이에 대해 걱정할 필요가 없습니다.
참조: http://api.jquery.com/live/
우리는 다음과 같은 요소에 대한 클릭 이벤트를 정의하는 등의 이벤트를 정의했습니다.
$('input').click(function () {
//코드 처리
}) ;
또는
$ ('.clickme').bind('click', function() {
// 바운드 핸들러가 호출되었습니다.
})
하지만 이것은 로드된 요소 정의 이벤트에 대해서만 수행할 수 있으며 나중에 추가되는 요소는 별도로 바인딩해야 합니다. jquery의 clone 기능을 사용해도 이벤트를 복사할 수 없습니다(아직까지는 왜 이렇게 정의했는지, 복사할 수 없는지, 특정 예외를 방지하기 위해 의도적으로 이런 방식으로 처리하는지, 아직 분석되지 않았는지 모르겠습니다). jquery의 소스 코드를 살펴보세요.)
이제 라이브를 사용하여 쉽게 할 수 있습니다.
$('.clickme').live('click', function() { // 라이브 핸들러가 호출됩니다. }); 나중에 삽입하세요. 요소는 이벤트 $('body').append('
Another target
');에도 바인딩됩니다.