本章节介绍一下,如何实现手机调用震动功能。
最好事先检查一下当前浏览器是否支持震动功能,下面就是检测的方法:
   [ 其他 ] 运行代码    下载代码
<script>
// Standards ftw!
var supportsVibrate = "vibrate" in navigator;
</script>
在window.navigator对象里就只有一个关于振动的API:vibrate。

振动API基础应用:

navigator.vibrate函数可以接受一个数字参数,也可以接受一个数字数组。

当使用数组参数时,奇数位的数值是震动秒数,偶数位为等待秒数。
   [ 其他 ] 运行代码    下载代码
<script>
// 振动1秒
navigator.vibrate(1000);
   
// 振动多次
// 参数分别是震动3秒,等待2秒,然后振动1秒
navigator.vibrate([3000, 2000, 1000]);
</script>
如果想停止震动,你只需要向navigator.vibrate方法里传入0,或一个空数组:
   [ 其他 ] 运行代码    下载代码
<script>
// 停止振动
navigator.vibrate(0);
navigator.vibrate([]);
</script>
需要提醒的是,对navigator.vibrate方法的调用并不会引起手机循环振动;当参数是一个数字时,振动之后发生一次,然后就停止下来。当参数是数组时,震动会按数组里的值震动,然后就停止振动。

持续震动:

我们可以简单的使用setInterval 和 clearInterval 方法产生让手机持续震动的效果:
   [ 其他 ] 运行代码    下载代码
<script>
var vibrateInterval;
   
// Starts vibration at passed in level
function startVibrate(duration) {
 navigator.vibrate(duration);
}
   
// Stops vibration
function stopVibrate() {
 // Clear interval and stop persistent vibrating 
 if(vibrateInterval) clearInterval(vibrateInterval);
 navigator.vibrate(0);
}
   
// Start persistent vibration at given duration and interval
// Assumes a number value is given
function startPeristentVibrate(duration, interval) {
 vibrateInterval = setInterval(function() {
 startVibrate(duration);
 }, interval);
}
</script>

代码描述:js实现 手机调用 震动功能。js实现手机调用震动功能



410 546



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册



×
×
51前端

注册

×
绑定手机

请绑定手机号,在继续操作

×
单次下载支付

应付金额:279

支付完成后,回到下载页面,在进行下载

官方QQ群
意见反馈
qq群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到