当前位置:首页 > JavaScript

js实现震动

2026-03-15 09:19:09JavaScript

实现浏览器震动效果

使用Web Vibration API可以在支持该功能的设备上触发震动效果。该API允许通过JavaScript控制设备的震动马达。

基本震动方法

调用navigator.vibrate()方法实现震动,参数为震动时间(毫秒)或震动模式数组:

// 单次震动500毫秒
navigator.vibrate(500);

// 震动模式:震动200ms,暂停100ms,震动300ms
navigator.vibrate([200, 100, 300]);

检查浏览器支持性

在执行震动前建议检测浏览器是否支持该API:

if ("vibrate" in navigator) {
    // 支持震动功能
    navigator.vibrate(200);
} else {
    console.log("该浏览器不支持震动API");
}

停止震动

调用无参数或0参数的vibrate()方法可停止当前震动:

// 停止所有震动
navigator.vibrate(0);

高级震动模式

可以创建复杂的震动模式数组,交替指定震动和暂停时间:

js实现震动

// 震动模式:震动300ms,暂停200ms,震动100ms,暂停400ms,震动50ms
const pattern = [300, 200, 100, 400, 50];
navigator.vibrate(pattern);

兼容性注意事项

该API主要适用于移动设备浏览器,部分桌面浏览器可能不支持。实际使用时建议结合用户交互事件(如点击)触发,避免自动震动可能带来的不良体验。

标签: js
分享给朋友:

相关文章

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 或直接使用 window.location 实现页面跳转,适用于普通跳转或带参数的 URL。 // 方…

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 实现页面跳转,这是最常用的方法。 window.location.href = 'https://…

js实现图片预览

js实现图片预览

使用FileReader API实现图片预览 通过FileReader对象读取用户选择的图片文件并显示预览: const input = document.getElementById('image…

js 实现链表

js 实现链表

链表的基本概念 链表是一种线性数据结构,由一系列节点组成,每个节点包含数据和指向下一个节点的指针。与数组不同,链表在内存中是非连续存储的,插入和删除操作效率较高。 链表的实现 在 JavaScrip…

js画图实现

js画图实现

使用Canvas API绘制图形 Canvas是HTML5提供的绘图API,通过JavaScript操作Canvas元素可以绘制各种图形。以下是一个简单的示例: <canvas id="myC…

js实现吸色

js实现吸色

使用Canvas实现吸色功能 通过Canvas的getImageData方法获取像素颜色数据。创建一个Canvas元素,将目标图像绘制到Canvas上,通过鼠标事件获取坐标对应的颜色值。 c…