为什么this代码不起作用?我想(没有JQuery)获取html元素的渲染高度。以下代码:
HTML:
<body id="logo">
</body>
的CSS:
body {
background-image: url('https://www.gstatic.com/images/branding/googlelogo/2x/googlelogo_color_284x96dp.png');
background-repeat: no-repeat;
background-attachment: fixed;
background-size: 100vw auto;
background-position: -80px 50%;
}
JS:
var element = document.getElementById(logo).offsetHeight;
console.log(element);
但是这段代码给出了这个错误:
VM227:51未捕获的TypeError:无法读取null的属性'offsetHeight'
我做错了什么?
答案 0 :(得分:0)
你的代码应该更像这样:
document.getElementById('logo')
否则你试图将带有id的元素放入var徽标。
问候
答案 1 :(得分:0)
将您的代码更改为:
var element = document.getElementById("logo").offsetHeight;
答案 2 :(得分:0)
在您的代码中,徽标目前是一个变量。你需要用引号括起来,所以:
document.getElementById("logo")
注意,offsetHeight还为您提供任何填充和边框的高度。