我的头脑里有这个代码
<script language="JavaScript">
function alertSize() {
// Get Browser Viewport Width
var adjust = "<?php echo $adjust; ?>";
// Get Browser Viewport Height
var height = window.innerHeight ||
document.documentElement.clientHeight ||
document.body.clientHeight;
// Get Browser Viewport Height
var height = window.getSize().y;
}
window.onload = alertSize;
</script>
我的身体里有这个
<div id="bodyheight">
</div>
<script language="JavaScript">
document.getElementById("bodyheight").style.height = height;</script>
然后我进入了身体代码:
'未捕获的ReferenceError:未定义高度'
在头部代码中我知道高度有一个值,当我输出'height'作为弹出窗口时显示正确的值。
我知道'document.getElementById(“bodyheight”)。style.height =;'当我放置一个固定值代替'height'变量时,它会起作用。
但由于某种原因,我无法在document.getElementById("bodyheight").style.height = height;
中使用'height'变量。
答案 0 :(得分:1)
height
是一个函数局部变量,只能在alertSize()
内使用。您的内联脚本正在尝试使用它,但此时此变量不在范围内。
此外,请注意您使用var
语句两次来创建height
变量。您正在重新声明一个局部变量,许多开发人员认为这是一个错误。
答案 1 :(得分:0)
可变范围 尝试
var height;
function alertSize() {
// Get Browser Viewport Width
var adjust = "<?php echo $adjust; ?>";
// Get Browser Viewport Height
height = window.innerHeight ||
document.documentElement.clientHeight ||
document.body.clientHeight;
// Get Browser Viewport Height
height = window.getSize().y;
}
此处有更多信息:What is the scope of variables in JavaScript?
希望这会有所帮助