首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在jQuery动画完成后使HTML/CSS元素消失?

如何在jQuery动画完成后使HTML/CSS元素消失?
EN

Stack Overflow用户
提问于 2022-03-29 03:55:02
回答 2查看 76关注 0票数 0

我有这样的动画,其中一个方块从页面的一个部分移动到另一个部分,点击一个开始按钮。

在动画完成后,我将如何使该框从页面中消失?

代码语言:javascript
运行
复制
$(function() {
  $("button").click(function() {
    $("#box").animate({
      left: $(window).width() - 800
    });
  });
});
代码语言:javascript
运行
复制
#box {
  width: 100px;
  height: 200px;
  background-color: skyblue;
  position: absolute;
  left: 0px;
  top: 300px;
  text-align: center;
  font-family: Times New Roman;
}
代码语言:javascript
运行
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="box">
  <p> BOX </p>
</div>
<div id="box">
  <p> Box </p>
</div>
<button>Start</button>

EN

回答 2

Stack Overflow用户

发布于 2022-03-29 04:30:18

您现在可以运行这个程序,只需添加完整的事件就可以了。也读过关于.animate的文章

编辑:将Jquery更新为3.6.0版本

代码语言:javascript
运行
复制
$(function() {
  $("button").click(function() {
    $("#box").animate({
      left: $(window).width() - 800
    },{
      complete: function () { // complete call back
        $("#box").hide(); // can hide or remove this elemenet
      }
    });
  });
});
代码语言:javascript
运行
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>

<div id="box">
  <p> Box </p>
</div>

<style type='text/css'>
  #box {
    width: 100px;
    height: 200px;
    background-color: skyblue;
    position: absolute;
    left: 0px;
    top: 50px;
    text-align: center;
    font-family: Times New Roman;
  }
</style>

<button>Start</button>

票数 0
EN

Stack Overflow用户

发布于 2022-03-29 18:05:08

请考虑以下几点。

代码语言:javascript
运行
复制
$(function() {
  $("button").click(function() {
    $("#box").animate({
      left: $(window).width() - $("#box").width()
    }, function() {
      $("#box").fadeOut();
    });
  });
});
代码语言:javascript
运行
复制
#box {
  width: 100px;
  height: 200px;
  background-color: skyblue;
  position: absolute;
  left: 0px;
  top: 300px;
  text-align: center;
  font-family: Times New Roman;
}
代码语言:javascript
运行
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<div id="box">
  <p>BOX</p>
</div>
<button>Start</button>

使用.animate(),您可以传入一个匿名函数,以便在动画完成后使用。我选择使用.fadeOut()隐藏元素。有很多方法可以做到这一点。

请参阅:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71656247

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档