当前位置:首页 > JavaScript

js实现上下动

2026-02-02 16:49:21JavaScript

实现元素上下移动的 JavaScript 方法

使用 CSS 动画结合 JavaScript

通过添加/移除 CSS 类控制动画效果:

js实现上下动

.move-up-down {
  animation: bounce 1s infinite alternate;
}
@keyframes bounce {
  from { transform: translateY(0); }
  to { transform: translateY(-20px); }
}
const element = document.getElementById('target');
element.classList.add('move-up-down');
// 停止动画
element.classList.remove('move-up-down');

使用 requestAnimationFrame 实现平滑动画

通过递归调用实现精确控制:

js实现上下动

let position = 0;
let direction = 1;
const speed = 2;

function animate() {
  position += speed * direction;
  if (position > 50 || position < 0) direction *= -1;
  element.style.transform = `translateY(${position}px)`;
  requestAnimationFrame(animate);
}
animate();

使用 setInterval 基础方法

适合简单的周期性移动:

let toggle = false;
setInterval(() => {
  element.style.top = toggle ? '20px' : '0px';
  toggle = !toggle;
}, 500);

使用 GSAP 动画库(需引入库文件)

提供更强大的动画控制:

gsap.to('#target', {
  y: -30,
  duration: 0.5,
  repeat: -1,
  yoyo: true
});

注意事项

  • 对于性能敏感场景推荐使用 CSS 动画或 requestAnimationFrame
  • 元素需要设置 position 属性为 relative/absolute/fixed
  • 移动距离和速度可根据实际需求调整参数
  • 清除动画时需注意取消对应的定时器或动画帧请求

标签: 上下js
分享给朋友:

相关文章

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 或直接使用 window.location 实现页面跳转,适用于普通跳转或带参数的 URL。 // 方…

js实现倒计时

js实现倒计时

使用 setInterval 实现倒计时 通过 setInterval 定时器每秒更新剩余时间,适用于简单倒计时场景。 function countdown(seconds, callbac…

js实现跑马灯

js实现跑马灯

实现跑马灯效果 使用HTML和JavaScript可以轻松实现跑马灯效果。以下是两种常见的实现方式: HTML结构 <div id="marquee"> <span>…

js 实现递归

js 实现递归

递归的基本概念 递归是指函数直接或间接调用自身的过程。在JavaScript中,递归通常用于解决可以分解为相似子问题的问题,如阶乘、斐波那契数列、树形结构遍历等。 递归的实现要点 基线条件(Base…

js实现乘法

js实现乘法

实现乘法运算的方法 在JavaScript中实现乘法运算可以通过多种方式完成,以下列举几种常见方法: 基础运算符 直接使用乘法运算符*是最简单的方式: let result = 3 * 5; //…

jquery和js

jquery和js

jQuery与JavaScript的区别 jQuery是一个基于JavaScript的库,封装了许多常用的功能,简化了DOM操作、事件处理、动画效果等。JavaScript是原生语言,功能更全面但代码…