几个不常用的 Web API
1. 设备震动 vibrate
Navigator.vibrate() 方法使设备(有震动硬件)产生有频率的震动。若设备不支持震动,该方法将无效。若某震动方式已经在进行中(当该方法调用时),则前一个震动方式停止,新的取而代之。
该方法若因为提供无效的参数使得无法使设备震动,它将返回false,否则返回true。若振动方案导致长时间的震动,它会被截断:最大震动时长取决于每个浏览器的具体实现。
1.1 判断设备是否支持该 API
var supportsVibrate = "vibrate" in navigator;
1.2 用法:
// 使用设备震动,参数为震动长度 单位 ms
window.navigator.vibrate(400);
// 也可以传入0或者一个全是0的数组,表示暂停震动
window.navigator.vibrate(0);
// 也可以传入一个包含数字的数组,奇数位的数值是震动秒数,偶数位为等待秒数, 比如下面这样就是代表震动300ms,暂停30ms,震动100ms,暂停30ms,震动100ms...
window.navigator.vibrate([100,30,100,30,100,200,200,30,200,30,200,200,100,30,100,30,100]); // Vibrate 'SOS' in Morse.
2. 重力感应方向控制 DeviceOrientation
deviceorientation 事件在方向传感器输出新数据的时候触发。
用法:
function fn(event){
console.log(event);
console.log(event.gamma); // alpha:设备沿着Z轴的旋转角度
console.log(event.beta); // beta:设备沿着X轴的旋转角度
console.log(event.Alpha); // gamma:设备沿着Y轴的旋转角度
}
window.addEventListener('deviceorientation', fn);
3. 网络连接和断开 Online/Offline
navigator.onLine 是一个值为 true/false (true 表示在线, false 表示离线) 的属性。
用法:
window.addEventListener('online',function(){
console.log('网络已连接!');
})
window.addEventListener('offline',function(){
console.log('网络已断开!');
})
3. 待续。。。
标签:
JavaScript
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构