当前位置:首页 > JavaScript

用js实现transition

2026-03-16 03:39:18JavaScript

使用 JavaScript 实现 CSS Transition

在 JavaScript 中实现 CSS Transition 可以通过直接操作元素的样式或切换类名来完成。以下是几种常见方法:

直接修改元素的 style 属性

通过 JavaScript 动态修改元素的 transition 属性和目标样式,触发过渡效果。

const element = document.getElementById('target');
element.style.transition = 'all 0.5s ease'; // 设置过渡属性
element.style.width = '200px'; // 触发过渡

通过切换类名实现

定义 CSS 类包含过渡效果,通过 JavaScript 切换类名触发动画。

CSS 部分:

.box {
  width: 100px;
  height: 100px;
  background: blue;
  transition: all 0.5s ease;
}

.box.active {
  width: 200px;
  background: red;
}

JavaScript 部分:

const box = document.querySelector('.box');
box.addEventListener('click', () => {
  box.classList.toggle('active'); // 切换类名触发过渡
});

监听过渡事件

JavaScript 可以监听 transitionend 事件,在过渡完成后执行回调。

element.addEventListener('transitionend', () => {
  console.log('过渡完成');
});

动态设置过渡属性

通过 JavaScript 动态调整过渡的持续时间、延迟或缓动函数。

用js实现transition

element.style.transition = 'width 1s cubic-bezier(0.4, 0, 0.2, 1) 0.5s';

注意事项

  • 确保目标样式与初始样式不同,否则过渡不会触发。
  • 过渡属性需明确指定(如 widthopacity),使用 all 可能影响性能。
  • 修改 display: nonevisibility 不会触发过渡,需通过延时或 requestAnimationFrame 处理。

标签: jstransition
分享给朋友:

相关文章

js 实现继承

js 实现继承

原型链继承 通过让子类的原型对象指向父类的实例来实现继承。子类实例可以访问父类原型上的属性和方法。 function Parent() { this.name = 'parent'; } Par…

js实现二叉树

js实现二叉树

二叉树的基本概念 二叉树是一种树形数据结构,每个节点最多有两个子节点,分别称为左子节点和右子节点。二叉树的常见操作包括插入、删除、遍历等。 二叉树的节点定义 在JavaScript中,二叉树的节点可…

js实现祖玛

js实现祖玛

实现祖玛游戏的核心思路 祖玛游戏的核心玩法是发射彩色珠子,形成三个或以上相同颜色的珠子即可消除。以下是使用JavaScript实现的基本框架。 游戏初始化 创建画布并初始化游戏状态: const…

js实现投球

js实现投球

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

js实现视口

js实现视口

js实现视口检测的方法 使用JavaScript检测元素是否进入视口(viewport)可以通过Intersection Observer API或手动计算元素位置实现。以下是两种常见方法: Int…

js 实现滚动

js 实现滚动

实现滚动的方法 使用 window.scrollTo() window.scrollTo() 方法可以滚动到文档中的特定位置。可以指定 x 和 y 坐标,或者使用平滑滚动的选项。 // 滚动到指定位…