2017-02-28 4 views
2

私はアニメーション関数を使ってdivを画面の一番上から移動しようとしていて、それが終わった後にコールバックで別のdivを持ってきています。両方のdivs一緒に移動し、私は別々に移動することができません。私の機能から除外された他のdivでも、それはまだ両方を動かす。ありがとうございました!jqueryでdivを動かす

$('#move').hover(function() { 
     $(this).animate(
     { 
      marginTop: '-500px' 
       }, 
     2000, 
     function(){ 

     } 
      ); // end animate  
     }); // end hover  



    <div id="moveup"> 
    move up 
    </div> 

    <div id="moveright"> 
move right 
    </div> 
+2

で文書フローからそれらを削除してください。このHTMLには '#move'要素はありません。あなたのコールバック関数には何もありません。 –

答えて

2

これらは相対的に配置されているため移動します。そのため、1つに負のマージンを設定すると、もう1つはそれに従います。あなたは彼らが独立するようにしたい場合は、私たちにあなたがこれまで持っているもののワーキングデモを与えるposition:absolute;

$('#moveup').hover(function() { 
 
    $(this).animate({ 
 
    marginTop: '-20px' 
 
    },500,function(){ 
 

 
    }); // end animate  
 
}); // end hover
#moveup, #moveright { 
 
    position:absolute; 
 
} 
 
#moveup { 
 
    top:50px; 
 
} 
 
#moveright { 
 
    top:100px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="moveup">move up</div> 
 

 
<div id="moveright">move right</div>

+0

完璧!それはうまくいった!ありがとうございました! – Craig

関連する問題