当前位置:首页 > JavaScript

js实现动画效果代码

2026-04-04 07:30:39JavaScript

使用 CSS 和 JavaScript 实现基础动画

通过修改元素的 style 属性实现简单动画效果。以下代码使一个方块水平移动:

const box = document.getElementById('box');
let position = 0;

function animate() {
  position += 2;
  box.style.left = position + 'px';

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

animate();

使用 CSS 类切换实现动画

定义 CSS 动画关键帧,通过 JavaScript 切换类名触发:

@keyframes slide {
  from { transform: translateX(0); }
  to { transform: translateX(200px); }
}

.box {
  width: 100px;
  height: 100px;
  background: blue;
}

.box.animate {
  animation: slide 2s forwards;
}
document.getElementById('box').classList.add('animate');

使用 Web Animations API

现代浏览器支持的动画 API,提供更精细的控制:

const box = document.getElementById('box');
box.animate([
  { transform: 'translateX(0)' },
  { transform: 'translateX(200px)' }
], {
  duration: 1000,
  iterations: Infinity,
  direction: 'alternate'
});

使用第三方动画库(GSAP)

GSAP 提供强大的动画控制能力:

js实现动画效果代码

gsap.to("#box", {
  x: 200,
  duration: 1,
  repeat: -1,
  yoyo: true
});

性能优化建议

优先使用 CSS 动画处理简单效果,复杂交互使用 JavaScript 动画。避免频繁触发重排的属性如 width/height,改用 transformopacity 这类合成层属性。使用 requestAnimationFrame 替代 setTimeout 保证动画流畅性。

标签: 效果代码
分享给朋友:

相关文章

网页表格制作css代码

网页表格制作css代码

基础表格样式 使用CSS为HTML表格添加基础样式,如边框、间距和背景色: table { width: 100%; border-collapse: collapse; margin:…

php分页代码简单实现

php分页代码简单实现

基本分页实现 在PHP中实现分页功能通常需要结合MySQL的LIMIT子句。以下是一个基础实现示例: <?php // 数据库连接 $conn = mysqli_connect("localh…

css网页制作代码

css网页制作代码

以下是一些常用的CSS网页制作代码示例,涵盖布局、样式和交互效果: 基础布局与样式 重置浏览器默认样式 * { margin: 0; padding: 0; box-sizing: b…

vue实现开关效果

vue实现开关效果

使用Vue实现开关效果 使用v-model绑定数据 通过v-model绑定一个布尔值来控制开关状态。当用户点击开关时,布尔值会自动更新。 <template> <div cla…

vue实现菜单效果

vue实现菜单效果

Vue实现菜单效果的方法 基础菜单实现 使用Vue的v-for指令和v-show/v-if可以快速实现基础菜单。通过数据驱动的方式渲染菜单项,结合事件处理实现交互。 <template>…

vue实现gif效果

vue实现gif效果

Vue 中实现 GIF 效果的方法 在 Vue 中实现 GIF 效果可以通过多种方式完成,以下是几种常见的方法: 直接使用 GIF 图片 将 GIF 图片作为静态资源引入,直接在 Vue 模板中使用…