<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
/**
1.deviceorientation 设备的物理方向信息,表示为一系列本地坐标的旋角
2.devicemotion 设备加速信息
3.compassneedscalibration 通知web站点使用罗盘信息校准上述事件
*/
//获取旋转角度
window.addEventListener("deviceorientation",function(event){
/**
alpha 以z为轴取值在(0,360)
beta 以x为轴取值为(-180,180)
gamma 以y为轴取值为(-90,90)
*/
console.log(event.alpha,event.beta,event.gamma)
},true);
//获取罗盘校准
window.addEventListener("compassneedscalibration",function(event){
alert("请校准你的罗盘!");
event.preventDefault();
},true)
//获取重力加速度
window.addEventListener("devicemotion",function(event){
//处理event.acceleration
//x y z 方向移动加速度值
//event.accelerationIncludingGravity
//考虑重力加速度后设备在x y z 的值
//event.rotationRate
//alpha beta gamma 设备绕x y z 旋转的角度
//摇一摇示例
/**
var speed = 30;
var x = y =z = lastX = lastY = lastZ = 0;
function deviceMotionHandler(eventData){
var acceleration = eventData.accelerationIncludingGravity;
x = acceleration.x;
y = acceleration.y;
z = acceleration.z;
if(Math.abs(x-lastX) > speed || Masth.abs(y-lastY) > speed ||Masth.abs(z-lastZ) > speed ){
//触发摇一摇
alert(1);
}
}
*/
},true);
</script>
</body>
</html>