1

我在一个网站上有一个对话,我正在努力通过执行以下操作来开始工作。

它的构建使用 .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) 只指向一个元素,但如果你想将函数应用于多个元素,你可以使用 $.each

于 2012-07-05T11:02:04.927 回答