移动端h5摇一摇事件
// 摇一摇动作 //获取加速度信息 //通过监听上一步获取到的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) { $('.slide_06_text').fadeOut(); $('.milk_01').animate({top:'0'},1000); $('.milk_02').show().animate({bottom:'0'},2000); $('.yao_tips_01').animate({top:'5%'},1500); $('.yao_tips_02').show().animate({bottom:'5%'},2000); setTimeout(function(){ $('.slide_06').fadeOut(); $('.slide_04').fadeIn(); },2500); } last_x = x; last_y = y; last_z = z; } }
耐得住寂寞,守得住繁华