0

これは私のコードです

var newElement=$('.oggetto').eq(0).clone();
newElement.animate({ 'top': '2000px'}, 5000);

<div id="container">
    <div class="oggetto" style="left:0px;">&nbsp;</div>
    <div class="oggetto" style="left:50px;">&nbsp;</div>
</div> 

しかし、「。oggetto」はclone()の後に移動しないようです。

実際、私が書くだけなら:

$('.oggetto').eq(0).animate({ 'top': '2000px'}, 5000);

それも同様に機能します。私はどこが間違っていますか?

4

3 に答える 3

3

なぜなら、最初に複製された要素をDOMに挿入してから、アニメーション化する必要があるからです。

var newElement=$('.oggetto').eq(0).clone();
$("#container").append(newElement); //add the element 

//Now animate
newElement.animate({ 'top': '2000px'}, 5000);

デモ

于 2012-06-28T07:22:23.140 に答える
1

アニメーション化する前に、DOMに挿入してみてください...

http://jsfiddle.net/LupfW/1/

newElement.appendTo("body").animate({ 'top': '2000px'}, 5000);​
于 2012-06-28T07:22:27.417 に答える
1

それをDOMツリーに追加する必要があります。デモ。

newElement.appendTo('#container').animate({ 'top': '2000px'}, 5000);​
于 2012-06-28T07:22:55.497 に答える