javascript - 循环 div 动画

标签 javascript jquery html css

我正在尝试让一个 div 持续设置动画:

$(document).ready(function() {
  function arrowmovement() {
    setTimeout(function() {
      $("#downarrowimg").animate({
        'margin-top': "-=30px"
      });
    }, 500);
    setTimeout(function() {
      $("#downarrowimg").animate({
        'margin-top': "+=30px"
      });
    }, 500);
  }
  arrowmovement();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="downarrow">
  <img id="downarrowimg" src="https://upload.wikimedia.org/wikipedia/en/f/f1/Down_Arrow_Icon.png">
</div>

它只运行一次。我做错了什么,我该如何解决?

最佳答案

这是一个纯 CSS 解决方案,可以连续地为 #downarrow 设置动画:

@keyframes downarrowanimation {
    0% {margin-top: 30px;}
    50% {margin-top: -30px;}
    100% {margin-top: 30px;}
}

#downarrow {
    animation: downarrowanimation 1s ease-in-out infinite;
}
<div id="downarrow">
<img id="downarrowimg" src="https://upload.wikimedia.org/wikipedia/en/f/f1/Down_Arrow_Icon.png">
</div>

关于javascript - 循环 div 动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34365408/

相关文章:

javascript - 使用 ADFS 和 nginx 实现 SSO

javascript - 覆盖 Angular 的 Service Worker 来处理 POST 请求

javascript - 如何编辑此代码HTML/CSS以使“选择” JS代码也复制2个剪贴板?

javascript - 自引用回调

javascript - Vue.Draggable 不移动组件

javascript - 使用 Javascript 运行动画后删除 html 标签

javascript - 无法为(稍后)javascript 生成的元素传播事件监听器(提交表单)

javascript - 将 Uint8Array 显示为图像

javascript - 子菜单不与侧面父元素重叠

html - 页脚问题 : Text left, 文本正确,图像正确,所有内联和共线都不起作用