1

私は、次のことを実行して作業を開始しようとしている Web サイトでダイアログを表示しています。

.append() を使用したそのビルドは 5 秒間待機し、その後、fadeout() および remove() を待機します。以下のように書いたのですが、うまくいきません。

html

<div class="addAddressDialog"></div>
<div class="overlay"></div>

js

    $(".addAddressDialog").append("<span> Thank you </span>")
     .delay(5000)
     .queue(function(next){
      $('.addAddressDialog, .overlay').fadeOut('fast',function(){$(this).remove()});                                
    });

http://jsfiddle.net/mynameisdonald/pAzyc/

4

2 に答える 2

3

更新されたフィドル - http://jsfiddle.net/pAzyc/2/

removeコールバック関数を呼び出さない

    $('.overlay').css("height",$(document).height());

    $(".addAddressDialog").append("<span> Thank you </span>").delay(5000).queue(function(next){
      $('.addAddressDialog, .overlay').fadeOut('fast').remove(); 
});
于 2012-07-05T10:53:33.537 に答える
0

あなたのフィドルを少し変更しました - http://jsfiddle.net/shershen08/pAzyc/6/だから今は動作します。問題は、$(this) が 1 つの要素のみを指していたことですが、関数を複数の要素に適用したい場合は $.each を使用できます。

于 2012-07-05T11:02:04.927 に答える