top
要素のホバー イベントとクリック イベントの両方を同じ (この場合は) プロパティでアニメーション化しようとしています。
このフィドルを見てください:http://jsfiddle.net/XC9Xu/1/
上部にとのa
固定があります。top:-50px
height=100px
1-ホバーすると、トップがアニメーション化しtop=0
、マウスリーブトップがtop=-50
再びなります。
2- クリック時: アニメーション化top=200px
問題は、クリックしてカーソルを動かさないことです。すべて問題ありませんが、カーソルを動かすとすぐに、次のように表示されますtop=-50px
。 D
過去のことは忘れて、未来を見ろ、と伝えなきゃ!
私が期待すること: クリック後に要素が残り、クリック後にマウスを動かしてもtop=300px
元に戻らないことを期待しています。top=-50px
次に、カーソルをその上に再度移動すると、その上部が 300 から 0 に移動します...
$(document).ready(function(){
$('a')
.hover(
function(){
$(this).animate({top:0});
},
function(){
$(this).animate({top:-50});
}
)
.on("click",function(){
$(this).animate({top:300});
});
});
a{
display:block;
position:fixed;
top:-50px;
left:0;
width:100%;
height:100px;
background:#ccc;
}