当前位置:首页 > JavaScript

用js实现页面暂停

2026-03-01 18:59:27JavaScript

使用CSS动画控制暂停

通过JavaScript动态切换CSS的animation-play-state属性实现暂停效果。适用于CSS动画场景:

const element = document.getElementById('target');
element.style.animationPlayState = 'paused'; // 暂停
element.style.animationPlayState = 'running'; // 恢复

暂停视频/音频元素

对媒体元素使用HTML5 Media API进行控制:

const media = document.querySelector('video');
media.pause(); // 暂停播放
media.play();  // 继续播放

冻结定时器

清除所有正在运行的定时器实现页面"冻结"效果:

// 存储所有定时器ID
const timers = [];
timers.push(setInterval(()=>console.log('timer'), 1000));

// 暂停所有定时器
timers.forEach(timer => clearInterval(timer));

禁用事件监听

临时移除事件监听器阻止交互:

function handleClick(e) { console.log('clicked'); }
element.addEventListener('click', handleClick);

// 暂停交互
element.removeEventListener('click', handleClick);

覆盖遮罩层

创建半透明遮罩层阻止页面操作:

const overlay = document.createElement('div');
overlay.style = `
  position: fixed;
  top:0; left:0; 
  width:100%; height:100%;
  background: rgba(0,0,0,0.5);
  z-index: 9999;
`;
document.body.appendChild(overlay);

// 恢复时执行
overlay.remove();

冻结CSS过渡

通过移除过渡类名停止动画效果:

用js实现页面暂停

element.classList.remove('active'); // 移除动画类
setTimeout(() => {
  element.classList.add('active'); // 恢复动画
}, 1000);

标签: 页面js
分享给朋友:

相关文章

vue实现的页面

vue实现的页面

Vue 实现的页面示例 Vue.js 是一个渐进式 JavaScript 框架,用于构建用户界面。以下是一个简单的 Vue 页面实现示例,包含基本的结构和功能。 安装 Vue 通过 CDN 引入 V…

js 进度条的实现

js 进度条的实现

使用 HTML 和 CSS 创建基础进度条 HTML 结构可以简单使用一个 div 元素作为容器,内部嵌套另一个 div 表示进度: <div class="progress-containe…

js实现验证

js实现验证

验证表单输入 使用JavaScript验证表单输入是常见的需求。可以通过监听表单提交事件,检查输入字段是否符合要求。 document.getElementById('myForm').addEve…

vue实现结算页面

vue实现结算页面

Vue 实现结算页面的方法 数据绑定与表单验证 使用 Vue 的 v-model 实现表单数据的双向绑定,确保用户输入的数据能够实时更新到 Vue 实例中。例如,绑定收货地址、支付方式等表单字段。…

js实现百叶窗

js实现百叶窗

使用CSS和JavaScript实现百叶窗效果 通过CSS动画和JavaScript事件监听可以实现百叶窗效果。核心思路是将内容区域分割为多个条状元素,通过控制它们的展开/折叠状态来模拟百叶窗。…

js实现选题

js实现选题

实现选题功能的JavaScript方法 基础实现方案 使用数组存储选项,通过随机索引选取: const options = ['选项A', '选项B', '选项C', '选项D']; const r…