设备事件

orientationchange事件

window.orientation有3个值:

  • 0 肖像模式
  • 90 向左旋转90度的横向模式
  • -90 向右旋转90度的横向模式

window.orientation发生变化时,就会触发orientationchange事件,事件的event不包含任何有价值的信息

唯一相关信息就是window.orientation

window.onorientationchange = function (){
console.log(window.orientation)
}

  

MozOrientation事件

检测设备方向变化,只有带加速计的设备才支持

window上触发

event中包含3个属性:x,y,z,(值的范围都是:-1~1)

z=1表示设备时竖直状态,静止不动, 设备移动时,值变小,失重时为0

向右倾斜,x变小

向左倾斜,x变大

向外倾斜,y变小

向内倾斜,y变大

deviceorientation事件

类似MozOrientation事件,带加速计的设备支持,window上触发

deviceorientation意图是告诉开发人员设备的空间朝向

event上有5个属性:

alpha, 绕z轴(左右旋转),0~360之间的浮点数

beta,绕x(前后旋转),-180~180之间的浮点数

gamma,绕y(扭转设备),-90~90之间的浮点数

absolute,布尔值,表示设备是否返回一个绝对值

compassCalivrated,布尔值,表示设备的指南针是否校准过

用来 重新排列或修改屏幕上的元素,响应设备的方向而旋转的元素

devicemotion事件

检测设备什么时候再移动

event包含属性:

acceleration:一个包含x,y,z属性的对象,再不考虑重力的作用告诉你每个方向上的加速度

accelerationIncludingGravity:  一个包含下,x,y,z属性的对象,在考虑z轴自然重力加速度情况下,告诉你在每个方向上的速度

interval: 以毫秒表示的时间速度,必须在另一个devicemotion事件触发前传入,这个值在每个事件中应该是一个常量

rotationRate: 一个包含alpha,beta, gamma的对象

如果读取不到 acceleration、accelerationIncludingGravity、rotationRate这三个值,为null.

原文地址:https://www.cnblogs.com/baixinL/p/14992806.html