deviceorientation不工作

时间:2013-03-11 06:49:29

标签: javascript html5 device-orientation uideviceorientation

我有这个小剧本:

<script>
window.addEventListener('deviceorientation', function(event) {
  var a = event.alpha;
  var b = event.beta;
  var g = event.gamma;
}, false);
</script>

<script>
setInterval('alert(""+g+"");', '1000');
</script>

应添加deviceorientation,将其附加到页面,并每隔1秒发出一次目标,即伽玛值。

但是,它不起作用? 没有什么警报! 任何提示......想法......?

编辑:我在控制台日志中收到“未捕获的ReferenceError:g未定义”...但已定义!

1 个答案:

答案 0 :(得分:2)

var语句将变量的范围设置为它所在的函数。

您正在尝试访问全局范围内的本地变量 - 它不存在。

此外,在发生deviceorientation之前,您不会设置变量,但是您会尝试一直读取它。

你必须像这样重写你的代码:

<script>
window.addEventListener('deviceorientation', function(event) {

  var a = event.alpha;
  var b = event.beta;
  var g = event.gamma;

  console.log( g.toString() ); // Better to use a non-blocking method like console.log to display results.

}, false);
</script>