我有这个小剧本:
<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未定义”...但已定义!
答案 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>