テンプレート機能からの戻りをモバイルサファリで画面に表示しようとしています。自分のデバイスが devicemotion をサポートしていることがわかります。データを含む vartiltFB のコンソール ログを確認できます。
表示できない、または動作しないのは、モバイル サファリの html の画面に表示されることです。
Template.tapapp.showAngle = function() {
var tiltFB;
if (window.DeviceMotionEvent) {
window.addEventListener('devicemotion', deviceMotionHandler, false);
console.log("Devicemotion IS supported on your device.");
} else {
console.log("Devicemotion Not supported on your device.");
return "Devicemotion Not supported on your device.";
}
function deviceMotionHandler(eventData) {
var acceleration = eventData.accelerationIncludingGravity;
var rawAcceleration = "[" + Math.round(acceleration.x) + ", " + Math.round(acceleration.y) + ", " + Math.round(acceleration.z) + "]";
var facingUp = -1;
if (acceleration.z > 0) {
facingUp = +1;
}
tiltFB = Math.round(((acceleration.y + 9.81) / 9.81) * 90 * facingUp);
console.log(tiltFB);
//Meteor.defer(function () {
// $('#angel').html(tiltFB);
// return tiltFB;
});
return tiltFB;
}
};
ここに私のhtmlがあります:
<template name="tapapp">
<div class="container">
<h3 class="angel-class" id="angle">{{showAngle}}</h3>
</template>