Idle Detection API 沙盒简介
Idle Detection API 沙盒是一款面向 Web 开发者的交互式演示工具,用于体验和测试浏览器原生的 Idle Detection API。该 API 允许 Web 应用感知用户是否离开键盘鼠标、是否锁屏,从而根据用户活跃状态智能调整应用行为。工具提供了完整的检测流程演示,从权限请求到状态监听再到数据展示,让开发者无需阅读大量文档即可快速理解 API 的工作原理和使用方式。
在即时通讯、在线协作、游戏、视频会议等场景中,了解用户是否在电脑前至关重要。传统的实现方式依赖 mousemove、keydown 等事件监听配合定时器,但这种方式无法检测屏幕锁定,也无法感知浏览器外的操作。Idle Detection API 则直接与操作系统交互,提供系统级的空闲与锁定状态检测能力,能够覆盖传统方案无法触及的场景。这使得 Web 应用能够更准确地判断用户状态,从而做出更智能的响应。
本沙盒工具封装了权限请求、检测启动、状态展示、阈值设置和日志记录等完整流程。开发者可以通过可视化界面直观感受 API 的工作方式,理解状态变更的触发逻辑,为生产环境中的集成提供参考。工具界面设计简洁直观,所有操作都有清晰的文字提示和状态反馈,即使是初次接触该 API 的开发者也能快速上手。
需要注意的是,Idle Detection API 目前仅在 Chromium 内核浏览器(Chrome 94+、Edge 94+)中受支持,且要求 HTTPS 安全上下文。Firefox 和 Safari 尚未实现该 API。本工具会在页面加载时检测浏览器兼容性,并给出相应提示。如果浏览器不支持该 API,工具会展示详细的兼容性信息和替代方案建议,确保开发者不会在不兼容的环境中浪费时间排查问题。
工具完全在本地浏览器中运行,不采集任何用户数据。检测到的状态信息仅用于界面展示,不会发送至任何服务器。开发者可以在控制台中观察 API 的事件流,辅助理解其内部工作机制。同时,工具的源代码完全开放,可供开发者学习参考其权限管理、事件监听和资源释放的最佳实践模式。
用户空闲检测高级演示 - 区分空闲/锁定
使用Idle Detection API区分用户是临时空闲、键盘无活动还是屏幕已锁定。
文件系统访问 API 沙盒 - 读写本地文件
使用 showOpenFilePicker 或 showSaveFilePicker 选择文件并读取/写入内容,体会原生文件交互。
Web Serial 终端记录器 - 捕获串口输出并保存
连接串行设备,实时显示接收数据,支持时间戳和保存为文本日志文件。
SQL注入演示平台 - 模拟漏洞与防护
构建一个虚拟的登录窗,演示SQL注入登录绕过,并展示参数化查询如何防范。
逻辑门沙盒 - 与/或/非拖拽连线模拟
在画布上放置并连接与、或、非门,切换输入观察输出。
语音指令卡牌游戏 - Web Speech API交互
说出特定指令来操控虚拟卡牌出牌或触发效果,体验语音交互娱乐。
Contact Picker API 测试 - 选取系统通讯录联系人
在支持的浏览器上弹出通讯录选择器,获取姓名、电话、邮箱等信息,体验联系人API。
浏览器通知测试器 - Web Notification API模拟
测试浏览器通知权限和弹出,自定义标题、正文及图标,发送系统桌面通知,调试推送。
西蒙记忆游戏 - 在线颜色序列重复挑战
经典的Simon Says记忆游戏,观察颜色亮起顺序并重复点击,序列逐渐加长,考验脑力。
页面密码锁 - 输入密码才显示内容
为嵌入的机密内容设置前端密码,只有输入正确密码才显示(需结合JS,不绝对安全)。
XSS 过滤器绕过测试场 - 安全编码演示
尝试输入各种编码和混淆的 XSS 向量,检查是否被过滤或执行(沙盒环境)。
自定义离线页面 - 网络断开时展示友好提示
设计无网络连接时显示的页面样式,生成需缓存的HTML。
手柄按钮序列录制器 - 记录并回放 Gamepad 操作
连接游戏手柄,录制一系列操作并可保存和回放,用于自动化测试。
无障碍模态对话框生成器 - 焦点陷阱与关闭
生成带有焦点陷阱、ESC 关闭和背景遮罩的无障碍模态弹窗代码。
NFC标签读取演示 - Web NFC API模拟
使用Web NFC API读取NDEF格式标签的数据,展示记录类型和内容(需硬件支持)。
公钥指纹查看器 - SSH Key可视化
粘贴SSH公钥,生成对应的OpenSSH randomart视觉指纹图和指纹字符串。
焦点陷阱测试工具 - 检测模态框是否困住 Tab
激活模态框后,模拟 Tab 和 Shift+Tab,验证焦点是否被正确限制在对话框内。
应用启动处理器演示 - 焦点现有窗口
配置Launch Handler使PWA应用在重复点击时聚焦到已开窗口,而不是新建窗口。
谍报密码牌生成器 - 自定义单词卡牌版图
生成可用于谍报密码游戏的5x5单词网格,支持自定义主题词库。
联系人选取器演示 - Contacts API
调用联系人API列出可用联系属性,选中后显示(需环境支持)。
随机用户信息生成器 - Mock数据在线生成
生成随机的姓名、邮箱、地址、电话等用户信息,支持自定义字段和批量输出JSON数组,用于测试填充。
事件监听器查看器 - 获取指定元素绑定事件
选择 DOM 元素,列出通过 addEventListener 绑定的所有事件及其类型和监听器(可用时)。
AudioContext状态监控 - 挂起/运行/关闭
显示当前AudioContext的状态、采样率和输出延迟,并允许一键挂起或恢复。
Web Storage 配额模拟器 - 测试存储超限行为
模拟 LocalStorage 或 IndexedDB 写满配额,测试错误处理并显示剩余空间估算。
虚拟开箱模拟器 - 箱子与钥匙音效
模拟带音效和特效的开箱过程,随机获得不同皮肤的道具。
虚拟信用卡号生成 - 测试用有效Luhn卡号
生成通过Luhn算法校验但无实际金钱的卡片号码,附带有效日期供开发测试。
Diceware口令生成器 - 掷骰子选词
虚拟掷5次骰子,根据官方Diceware词表生成强随机且易记忆的通行短语。
栈与队列模拟器 - 推入弹出可视化操作
交互式向栈(后进先出)或队列(先进先出)添加删除元素,演示数据流变化。
邮件垃圾评分模拟 - 常见避规规则
分析邮件内容的词语触发规则,估算可能的垃圾邮件评分并给出修改建议。
数回 Slitherlink 在线玩 - 点阵环线逻辑游戏
根据数字提示连接点阵画出一个闭环曲线,经典日本谜题,锻炼逻辑推理。
UD5工具箱