当前位置:首页 > JavaScript

js 实现闪烁

2026-04-05 15:26:42JavaScript

JavaScript 实现元素闪烁效果

通过修改元素的 visibilityopacity 属性,结合 setInterval 实现周期性闪烁效果。

js 实现闪烁

基础实现方案:

js 实现闪烁

const element = document.getElementById('target');
let isVisible = true;

setInterval(() => {
  isVisible = !isVisible;
  element.style.visibility = isVisible ? 'visible' : 'hidden';
}, 500);

优化方案(CSS 过渡):

const element = document.getElementById('target');
element.style.transition = 'opacity 0.3s ease';

setInterval(() => {
  element.style.opacity = element.style.opacity === '0' ? '1' : '0';
}, 1000);

高级实现(类名切换):

.blink {
  animation: blink-animation 1s infinite;
}

@keyframes blink-animation {
  0% { opacity: 1; }
  50% { opacity: 0; }
  100% { opacity: 1; }
}
document.getElementById('target').classList.add('blink');

停止闪烁的方法

// 清除定时器方案
const blinkInterval = setInterval(blinkFunc, 500);

function stopBlinking() {
  clearInterval(blinkInterval);
  element.style.visibility = 'visible';
}

// CSS 动画方案
document.getElementById('target').classList.remove('blink');

注意事项

  1. 性能考虑:CSS 动画通常比 JavaScript 定时器性能更好
  2. 浏览器兼容性:现代浏览器都支持上述方法
  3. 闪烁频率:通过调整时间间隔参数控制闪烁速度
  4. 移动端适配:确保闪烁效果在不同设备上表现一致

标签: js
分享给朋友:

相关文章

js实现vr

js实现vr

使用WebXR API实现VR体验 WebXR是浏览器中实现VR和AR体验的标准API,它取代了早期的WebVR。现代浏览器如Chrome、Edge和Firefox已支持WebXR。 // 初始化W…

js实现抽奖

js实现抽奖

实现抽奖功能的基本思路 抽奖功能的核心是随机选择奖项并展示结果。可以通过数组存储奖项,利用随机数生成索引,最后通过动画增强用户体验。 准备奖项数据 定义一个数组存储奖项信息,每个奖项可以包含名称、图…

js实现求导

js实现求导

实现数值求导的方法 在JavaScript中实现求导通常采用数值方法,因为JavaScript不是符号计算语言。以下是常见的数值微分方法: 中心差分法 中心差分法提供较高精度的导数近似:…

js实现授权

js实现授权

授权流程设计 授权流程通常涉及前端与后端的交互,常见方案包括OAuth2.0、JWT等。以JWT为例的典型流程: 用户提交凭证(如用户名密码)到认证服务 服务端验证通过后生成包含用户信息的J…

vue实现js休眠

vue实现js休眠

实现 JavaScript 休眠的方法 在 Vue 中实现 JavaScript 休眠(延迟执行)可以通过以下方式实现。由于 JavaScript 本身没有内置的 sleep 函数,通常使用 Prom…

js实现密码

js实现密码

密码强度验证 使用正则表达式验证密码强度是一种常见方法。以下代码检查密码是否包含大小写字母、数字和特殊字符,且长度至少为8位: function checkPasswordStrength(pass…