HTML5实现摇一摇的功能

HTML5也可以实现微信的摇一摇功能

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>摇一摇功能</title>
<script type="text/javascript">
var SHAKE_THRESHOLD = 3000;
var last_update = 0;
var x = y = z = last_x = last_y = last_z = 0;
function init() {
if (window.DeviceMotionEvent) {
window.addEventListener('devicemotion', deviceMotionHandler, false);
} else {
alert('not support mobile event');
}
}
function deviceMotionHandler(eventData) {
var acceleration = eventData.accelerationIncludingGravity;
var curTime = new Date().getTime();
if ((curTime - last_update) > 100) {
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("摇动了");
}
last_x = x;
last_y = y;
last_z = z;
}
}
</script>
</head>
<body onload="init()">
<p>摇一摇</p>
</audio>
</body>
</html>

posted on 2015-10-07 23:15  lmx22  阅读(179)  评论(0编辑  收藏  举报

导航