JS实现手机摇一摇功能

不点 阅读:867 2020-02-19 18:27:54 评论:0
//运动事件监听 
  if (window.DeviceMotionEvent) { 
      window.addEventListener('devicemotion',deviceMotionHandler,false); 
  } 
   
  //获取加速度信息 
  //通过监听上一步获取到的x, y, z 值在一定时间范围内的变化率,进行设备是否有进行晃动的判断。 
  //而为了防止正常移动的误判,需要给该变化率设置一个合适的临界值。 
  var SHAKE_THRESHOLD = 4000; 
 var last_update = 0; 
 var x, y, z, last_x = 0, last_y = 0, last_z = 0; 
 function deviceMotionHandler(eventData) { 
         var acceleration =eventData.accelerationIncludingGravity; 
         var curTime = new Date().getTime(); 
         if ((curTime-last_update)> 10) { 
             var diffTime = curTime -last_update; 
             last_update = curTime; 
             x = acceleration.x; 
             y = acceleration.y; 
             z = acceleration.z; 
             var speed = Math.abs(x +y + z - last_x - last_y - last_z) / diffTime * 10000; 
             if (speed > SHAKE_THRESHOLD) { 
                /* alert("你中奖啦!");*/  // Do something 
				openZoosUrl(); 
             } 
             last_x = x; 
             last_y = y; 
             last_z = z; 
         } 
 }
标签:JavaScript
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号