<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"/> <meta name="format-detection"content="telephone=no"> <title>html5 Gravity Sensing Event</title> </head> <body> <p>Shake to trigger html5 gravity sensing event</p> <div id="j"></div> <script type="text/javascript"> if (window.DeviceMotionEvent) { window.addEventListener('devicemotion',deviceMotionHandler, false); } var speed = 1;//speed var x = y = z = lastX = lastY = lastZ = 0; function deviceMotionHandler(eventData) { var acceleration =eventData.accelerationIncludingGravity; x = acceleration.x; y = acceleration.y; z = acceleration.z; //document.getElementById("j").innerHTML = "\n "+Math.abs(x-lastX)+"\n"+Math.abs(y-lastY)+"\n"+Math.abs(z-lastZ); if(Math.abs(x-lastX) > speed || Math.abs(y-lastY) > speed || Math.abs(z-lastZ) > speed) { //Simple shake trigger code //alert('Triggered gravity sensor'); document.getElementById("j").innerHTML = "\n "+Math.abs(x-lastX); } lastX = x; lastY=y; lastZ = z; } </script> </body> </html>
refer to:
http://www.haorooms.com/post/html5_DeviceMotionEvent