HTML5实现摇一摇的功能

 function init(){
  if (window.DeviceMotionEvent) {
    // 移动浏览器支持运动传感事件
    window.addEventListener('devicemotion', deviceMotionHandler, false);
  } 
}
var SHAKE_THRESHOLD = 3000;
// 定义一个变量保存上次更新的时间
var last_update = 0;
// 紧接着定义x、y、z记录三个轴的数据以及上一次出发的时间
var x;
var y;
var z;
var last_x;
var last_y;
var last_z;
var count = 0;


function deviceMotionHandler(eventData) {
  // 获取含重力的加速度
  var acceleration = eventData.accelerationIncludingGravity; 


  // 获取当前时间
  var curTime = new Date().getTime(); 
  var diffTime = curTime -last_update;
  // 固定时间段
  if (diffTime > 100) {
    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 * 30000; 


    if (speed > SHAKE_THRESHOLD) { 
      // TODO:在此处可以实现摇一摇之后所要进行的数据逻辑操作
      count++;
var px = count*19;
var text = count*8;


var gamer=document.getElementById("game-start-water");
var gamertext=document.getElementById("shaketext01");
gamertext.style.cssText = "display:none;";
gamer.style.cssText = "position:absolute; z-index:1; top:" + (470-px) + "px;";
$("#shaketext").html("DK/t" + text);
if(px>=380)
{
alert("380了哦!!");
}
    }


    last_x = x; 
    last_y = y; 
    last_z = z; 
  } 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值