1

jQueryでfadeOut()アニメーションを停止する方法はありますか?mouseleaveスクリプトを次のように機能させたい:

  • 1:ユーザーがテキストの上にマウスを置くと、divが表示されます
  • 2:ユーザーがテキストの外にマウスを置くと、divが非表示になりますが、代わりにユーザーがコンテナにカーソルを合わせると、divは引き続き表示されます。

これは私が働いていることです:

$(document).ready(function(){    
    $('.this').hover(function(){
        $('#container').fadeIn(200);
    }).mouseleave(function(){
        setTimeout(function () {
        $('#container').fadeOut(200);
    }, 1000);
    })

    $('#container').hover(function(){
        $('#container').stop().show();
    })

});

フィドル

4

3 に答える 3

1

これを試して:

$(document).ready(function () {
    $('.this').hover(function () {
        $('#container').fadeIn(200);
    });
    $('.this').mouseleave(function (e) {
        setTimeout(function () {
            if ($('#container:hover').length != 1) $('#container').fadeOut(200);
        }, 1000);
    });
});

デモ

于 2013-03-22T12:41:20.363 に答える
1

ここに jsfiddle があります。それをチェックしてください、私はそれがあなたが必要とするものだと思います。

$(document).ready(function() {
    $('a').hover(function() {
          $('.this').stop().fadeTo(200, 1, function(){
               $('.this').fadeTo(800, 0.1);
          });
    }, function() {
          $('.this').stop().fadeTo(200, 0.1);
    });
});

それが役に立てば幸い

于 2013-03-22T12:43:39.703 に答える