2012-01-08 3 views
7

내가 아래에있는 내 JQuery와의 live() 기능을 가지고() CSTE 연구진하기 on() 기능을 사용하는 것이 좋습니다. 이것이 사실이라면 live() 함수가 아닌 위의 코드를 on() 함수로 어떻게 변경합니까? live()을 사용하지 않거나별로 중요하지 않습니까?.live에서 코드를 변경하는 방법()

답변

9

documentation에 따르면 간단 그 후속의 관점에서 .live() 고쳐 쓰기 방법

; 당신이 jQuery를 1.7+를 사용하는 경우

귀하의 경우 그래서
$(selector).live(events, data, handler);    // jQuery 1.3+ 
$(document).delegate(selector, events, data, handler); // jQuery 1.4.3+ 
$(document).on(events, selector, data, handler);  // jQuery 1.7+ 

, 그것은 다음과 같습니다 : 이러한 세 가지 이벤트 부착 방법에 대한 해당 통화에 대한 템플릿입니다

$(document).on('change', '#qandatbl td.weight input', calculateTotal); 
+0

이 감사합니다 :) 가장 좋은 대답은 – BruceyBandit

+0

맞으면 그의 대답을 받아 들여야합니다. :) – redmoon7777

+2

핸들러 설정에는 이상적으로'$ (document)'를 사용하지 않는 것이 좋습니다 : 실제 타겟에 가장 가까운 부모 요소를 사용하는 것이'.live()'무엇입니까? '.on()'을 호출 할 때 그 부모가 존재할 수있는 한 그 요소가 있어야한다. (아마도 "#qandatbl"요소일까요?) – nnnnnn

관련 문제