当前位置:首页 > JavaScript

js实现div动画

2026-04-07 10:13:13JavaScript

使用 CSS Transition 实现简单动画

通过 CSS transition 属性结合 JavaScript 动态修改样式,实现平滑过渡效果。

HTML

<div id="box"></div>
<button onclick="moveBox()">移动</button>

CSS

#box {
  width: 100px;
  height: 100px;
  background-color: red;
  transition: all 0.5s ease;
}

JavaScript

function moveBox() {
  const box = document.getElementById("box");
  box.style.transform = "translateX(200px)";
}

使用 CSS Animation 实现关键帧动画

通过 JavaScript 动态添加或移除 CSS 动画类。

CSS

js实现div动画

@keyframes slide {
  0% { transform: translateX(0); }
  100% { transform: translateX(200px); }
}

.animate {
  animation: slide 1s forwards;
}

JavaScript

function startAnimation() {
  const box = document.getElementById("box");
  box.classList.add("animate");
}

使用 requestAnimationFrame 实现高性能动画

适用于需要精细控制的复杂动画。

JavaScript

let position = 0;
function animate() {
  const box = document.getElementById("box");
  position += 2;
  box.style.transform = `translateX(${position}px)`;

  if (position < 200) {
    requestAnimationFrame(animate);
  }
}

使用 GSAP 库实现高级动画

GSAP 提供更强大的动画控制,适合复杂场景。

js实现div动画

引入 GSAP

<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.2/gsap.min.js"></script>

JavaScript

gsap.to("#box", {
  x: 200,
  duration: 1,
  rotation: 360,
  ease: "bounce.out"
});

使用 Web Animations API

现代浏览器原生支持的动画 API,无需额外库。

JavaScript

const box = document.getElementById("box");
box.animate(
  [
    { transform: "translateX(0)" },
    { transform: "translateX(200px)" }
  ],
  {
    duration: 1000,
    easing: "ease-in-out"
  }
);

标签: 动画js
分享给朋友:

相关文章

jquery.js

jquery.js

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,用于简化 HTML 文档遍历、事件处理、动画设计和 Ajax 交互。它的设计宗旨是“Write Less, Do Mor…

vue实现gif动画

vue实现gif动画

Vue 中实现 GIF 动画的方法 在 Vue 中实现 GIF 动画可以通过多种方式完成,具体取决于需求和使用场景。以下是几种常见的方法: 直接使用 <img> 标签加载 GIF 最简单…

vue实现动画

vue实现动画

Vue 动画实现方法 Vue 提供了多种方式实现动画效果,主要通过内置组件和 CSS 过渡/动画实现。 使用 <transition> 组件 Vue 的 <transition&g…

js实现变形

js实现变形

使用 CSS 和 JavaScript 实现元素变形 在 JavaScript 中实现变形效果通常结合 CSS 的 transform 属性,通过动态修改该属性实现元素的旋转、缩放、倾斜或平移。 基…

js实现自举

js实现自举

实现 JavaScript 自举的方法 JavaScript 自举(Bootstrap)通常指通过 JavaScript 动态加载自身或依赖的脚本,实现运行时环境的初始化或扩展。以下是几种常见实现方式…

js实现投球

js实现投球

实现投球动画的基本思路 使用JavaScript和CSS动画结合的方式模拟投球效果。核心是通过改变元素的位置、旋转和缩放属性,配合定时器或CSS过渡实现平滑动画。 创建基础HTML结构 <di…