运行动画然后删除元素

时间:2014-12-02 02:02:34

标签: javascript jquery animation

我想运行一个简单的动画,然后删除div,因为它位于某些按钮上,所以你不能在动画后点击它们。

JS

$(".intro").eq(0).delay(800).animate({"opacity":"0"},1000 );

我尝试这样做是为了在动画后删除元素,但之前将其删除。

$(".intro").eq(0).delay(800).animate({"opacity":"0"},1000 ).remove();

3 个答案:

答案 0 :(得分:2)

删除动画功能的回调:

$(".intro").eq(0).delay(800).animate({opacity: 0}, 1000, function() {
  $(this).remove()
});

或者,在选项对象中添加完整函数:

$(".intro").eq(0).delay(800).animate({opacity: 0}, {duration: 1000, complete: function() {$(this).remove();}});

您可以为其添加更多选项,例如缓和。查看API doc

答案 1 :(得分:1)

动画完成后,您可以使用 complete callback 来调用:

 $(".intro").eq(0).delay(800).animate({"opacity":"0"},1000, function() {
      $(this).remove();
 });

<强> Working Demo

答案 2 :(得分:0)

使用完整回调

&#13;
&#13;
$(".intro").eq(0).delay(800).animate({"opacity":"0"},1000, function() { $(this).remove(); } );
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="intro">Hello</div>
&#13;
&#13;
&#13;