문제

내 문제 : Ajax를 통해 일부 요소를로드 한 후 일부 클릭 기능을 바인딩하지만 사용자가 동일한 요소를 몇 배로드하면 반복적 인 동작이 반복됩니다 (적어도 보이는 것처럼 교체하지 않음). 나는 시도했다 unbind, 또는 click(function(){return false;}); 그러나 그 완전한 요소에서 clic 동작을 제거합니다 ...). 그런 종류의 문제의 표준 솔루션은 무엇입니까?

도움이 되었습니까?

해결책

대부분의 이벤트에서 사용할 수 있습니다 live() (jQuery 1.3+) :

$("td").live("click", function() {
  // do stuff
});

이것은 클릭 이벤트를 바인딩합니다 <td> 이 코드를 실행 한 후에도 존재하는 요소.

이것은 바인딩/풀려고하는 것보다 훨씬 더 깨끗한 솔루션입니다. 특정 요소에 동일한 이벤트가 두 번 묶여 있지 않도록하십시오.

다른 팁

jQuery 1.3.2를 사용하는 경우 사용할 수 있습니다 $('').live('click', function() {}); 해당 선택기와 일치하는 요소를 갖기 위해서는 작업이 있습니다. 새로운 요소로도 이벤트를 유지합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top