1. 程式人生 > >html5 獲取 陀螺儀,重力感應(轉發)

html5 獲取 陀螺儀,重力感應(轉發)

DeviceOrientationEvent是獲取方向,得到device靜止時的絕對值;
    DeviceMotionEvent是獲取移動速度,得到device移動時相對之前某個時間的差值比

裝置定位API,該API允許你收集裝置的方向和移動資訊。此外,該API只在具備陀螺儀功能的裝置上使用。

<html>

<head>
<title>DeviceOrientationEvent</title>
<meta charset="UTF-8" />
</head>

<body>
<p>左右:<span id="alpha">0</span>
</p>
<p>前後:<span id="beta">0</span>
</p>
<p>扭轉:<span id="gamma">0</span>
</p>
<p>指北針指向:<span id="heading">0</span>度</p>
<p>指北針精度:<span id="accuracy">0</span>度</p>
<hr />
<p>x軸加速度:<span id="x">0</span>米每二次方秒</p>
<p>y軸加速度:<span id="y">0</span>米每二次方秒</p>
<p>z軸加速度:<span id="z">0</span>米每二次方秒</p>
<hr />
<p>x軸加速度(考慮重力加速度):<span id="xg">0</span>米每二次方秒</p>
<p>y軸加速度(考慮重力加速度):<span id="yg">0</span>米每二次方秒</p>
<p>z軸加速度(考慮重力加速度):<span id="zg">0</span>米每二次方秒</p>
<hr />
<p>左右旋轉速度:<span id="Ralpha">0</span>度每秒</p>
<p>前後旋轉速度:<span id="Rbeta">0</span>度每秒</p>
<p>扭轉速度:<span id="Rgamma">0</span>度每秒</p>
<hr />
<p>上次收到通知的間隔:<span id="interval">0</span>毫秒</p>


<script type="text/javascript">
function orientationHandler(event) {
document.getElementById("alpha").innerHTML = event.alpha;
document.getElementById("beta").innerHTML = event.beta;
document.getElementById("gamma").innerHTML = event.gamma;
document.getElementById("heading").innerHTML = event.webkitCompassHeading;
document.getElementById("accuracy").innerHTML = event.webkitCompassAccuracy;

}


function motionHandler(event) {
document.getElementById("interval").innerHTML = event.interval;
var acc = event.acceleration;
document.getElementById("x").innerHTML = acc.x;
document.getElementById("y").innerHTML = acc.y;
document.getElementById("z").innerHTML = acc.z;
var accGravity = event.accelerationIncludingGravity;
document.getElementById("xg").innerHTML = accGravity.x;
document.getElementById("yg").innerHTML = accGravity.y;
document.getElementById("zg").innerHTML = accGravity.z;
var rotationRate = event.rotationRate;
document.getElementById("Ralpha").innerHTML = rotationRate.alpha;
document.getElementById("Rbeta").innerHTML = rotationRate.beta;
document.getElementById("Rgamma").innerHTML = rotationRate.gamma;
}

if (window.DeviceMotionEvent) {
window.addEventListener("devicemotion", motionHandler, false);
} else {
document.body.innerHTML = "What user agent u r using???";
}

if (window.DeviceOrientationEvent) {
window.addEventListener("deviceorientation", orientationHandler, false);
} else {
document.body.innerHTML = "What user agent u r using???";
};
</script>
</body>

</html>