2009-05-07 9 views
0

Dans Firefox, cela semble fonctionner correctement - mais Safari, Opera & Chrome avait tous problème. Une erreur sera renvoyée par jQuery.ui (ligne 3181) qui contrôle le changement de couleur des éléments, c'est-à-dire l'effet "Highlight".jQuery Animation Erreur sur les éléments clonés

Cela se produit uniquement lorsque vous essayez de cloner et mettre en évidence le clone dans la même action, à savoir $(targetStory).after(targetStory.clone().effect("highlight", {}, 1300));

Cela fonctionne bien dans Firefox, mais provoque d'autres navigateurs pour arrêteraient - targetStory est tout simplement l'ID de l'élément étant cloné, et il doit être cloné après cet élément.

Est-ce que quelqu'un a déjà rencontré cette erreur, et existe-t-il une autre solution pour animer facilement le clone? Moins de lignes, mieux c'est.

+0

Cela a bien fonctionné pour moi. Pourrait poster un peu plus de code: un peu de html et la façon dont vous initialisez targetStory (ce n'est pas simplement l'ID, ce devrait être un objet jQuery, comme vous le faites targetStory.clone()) – Kobi

Répondre

0

Qu'en est-:

$(targetStory).clone().effect("highlight", {}, 1300)).insertAfter(targetStory); 

exactement la même chose, tout autre ordre. Je ne sais pas pourquoi FF est OK et les autres sont cassés, cependant ...

0

Si l'élément que vous clonez a un ID, vous devez supprimer (ou changer) l'ID du clone avant de le remettre dans le DOM. Essayez:

$(targetStory).clone().removeAttr('id').insertAfter(targetStory) 
    .effect(...);