문제

사용법입니다

e = elem.clone(true);
elem.remove();

동일합니다

e = elem.detach();

나중에 나는 그것을 추가합니다

e.appendTo($("#someDiv"));

jQuery 1.4에서?
클론 (True) 메소드는 Detach ()를 사용하여 모든 것을 보존합니까?

도움이 되었습니까?

해결책

동일하지만 다른 : 변수에 할당하지 않고 노드를 복제하면 복사 된 노드의 참조를 잃어 버릴 수 있으므로 이벤트 처리기 및 기타 데이터 (사실이 아니라 PITA)에서 손을 얻을 수 있습니다.

편집하다
예, 복제 된 요소에 대한 참조를 사용하면 나중에 DOM에 추가 될 수있는 정확한 사본 (진정한 매개 변수)이 있습니다.

다른 팁

내가 읽는 방식은 동등한 접근법이 될 것입니다.

에서 Detach ()에 대한 문서:

.detach () 메소드는 .detach ()가 제거 된 요소와 관련된 모든 jQuery 데이터를 유지하는 것을 제외하고 .remove ()와 동일합니다. 이 방법은 제거 된 요소가 나중에 DOM으로 다시 삽입 될 때 유용합니다.

에서 클론 문서 ():

.Clone ([WithDataAndevents])

withdataandevents 이벤트 핸들러를 요소와 함께 복사 해야하는지 여부를 나타내는 부울. jQuery 1.4 요소 데이터도 복사됩니다.

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