Pergunta

É o uso de

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

Idêntico a

e = elem.detach();

Se mais tarde eu o anexar com

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

No jQuery 1.4?
O método clone (True) preservará tudo o que usa DetArt ()?

Foi útil?

Solução

O mesmo, mas diferente: se você apenas clonar um nó sem atribuí -lo a uma variável, perderá a referência do nó copiado e, portanto, qualquer chance de ganhar a mão nos manipuladores de eventos e outros dados (não é verdade, mas é uma pita).

EDITAR
Sim, mantendo uma referência ao elemento clonado, você tem uma cópia exata (lembre -se do param verdadeiro) que pode ser mais tarde anexado ao DOM.

Outras dicas

Do jeito que eu li, essas seriam abordagens equivalentes:

A partir de Documentação para Detach ():

O método .detach () é o mesmo que .remove (), exceto que .detach () mantém todos os dados do jQuery associados aos elementos removidos. Este método é útil quando os elementos removidos devem ser reinseridos no DOM posteriormente.

A partir de Documentação para Clone ():

.clone ([withdataandevents])

WithDataandevents Um booleano indicando se os manipuladores de eventos devem ser copiados junto com os elementos. Até o jQuery 1.4, os dados de elementos também serão copiados.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top