-1

変更したいコードは次のとおりです。

$("#header_nav").mouseenter(function(){
            $('#header_nav').stop().animate({
                height:'50px'
            },600); 
});


$("#header_nav").mouseleave(function(){
            $('#header_nav').stop().animate({
                height:'100px'
            },600);
});

http://jsfiddle.net/JJ8Jc/318/


質問:停止時間 (領域にカーソルを合わせても応答しない時間) を設定する方法を教えてください。


ありがとうございました。

4

1 に答える 1

1

「停止時間」が何を意味するのかは明確ではありませんが、少なくとも最小時間、たとえば 500ms の間、マウスが要素の上に置かれるまでアニメーションを開始したくないという意味だと思います。その場合は、.delay()メソッド.stop()を使用し、引数を指定して呼び出してtrue、キュー内のアニメーションをクリアできます。

$("#header_nav").mouseenter(function(){
        $(this).stop(true).delay(500).animate({
            height:'50px'
        },600); 
}).mouseleave(function(){
        $(this).stop(true).animate({
            height:'100px'
        },600);
});

デモの更新版: http://jsfiddle.net/JJ8Jc/321/

于 2013-09-18T12:36:37.313 に答える