未捕获的类型错误:无法读取此代码中的 null 属性“style”
2019-09-26
111
我不知道为什么脚本无法识别
body
。
我的带有脚本的 HTML:
<html>
<head>
<script>
document.body.style.overflow="hidden";
</script>
<body>
<table width="2000px" height="1000px">
<tr><td></td></tr>
<tr><td></td></tr>
<tr><td></td></tr>
<tr><td></td></tr>
<tr><td></td></tr>
<tr><td></td></tr>
<tr><td></td></tr>
<tr><td></td></tr>
</table>
</body>
错误:
Uncaught TypeError: Cannot read property 'style' of null
2个回答
document.body
为
null
,因为您的代码在遇到
script
标记时立即运行,而
body
尚未创建。
将您的
script
移至文档末尾,紧邻结束
</body>
标记。
也就是说,这里不需要 JavaScript。您只需添加 CSS 样式:
body {
overflow: hidden;
}
...或在开始
body
标记上添加内联
style
属性:
<body style="overflow: hidden">
T.J. Crowder
2019-09-26
<html>
<head>
<body>
<table width="2000px" height="1000px">
<tr><td></td></tr>
<tr><td></td></tr>
<tr><td></td></tr>
<tr><td></td></tr>
<tr><td></td></tr>
<tr><td></td></tr>
<tr><td></td></tr>
<tr><td></td></tr>
</table>
<script>
document.body.style.overflow="hidden";
</script>
</body>
您只需将脚本标签放在正文结束之前。现在您的脚本标签在正文标签加载之前执行。
Faiz Sandhi
2019-09-26