我正在尝试从 JS 脚本动态附加一个 div 元素到 HTML DOM 中,例如:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Result</title>
<style>
.chart-container {
position: relative;
height: 40vh;
width: 80vw;
}
</style>
<script defer>
var divContainer = document.createElement('div');
divContainer.className = 'chart-container';
document.body.appendChild(divContainer);
... REST OF THE SCRIPT
</script>
</head>
<body>
<h1>Metrics Information:</h1>
</body>
</html>
但由于某种原因,这只会导致:
Uncaught TypeError: Cannot read properties of null (reading 'appendChild')
defer
标签上的<script>
属性对内联脚本没有影响。它仅适用于通过 src
属性导入的脚本。
如果将脚本移至
<body>
部分的末尾,它应该可以工作(好吧,发布的 3 行应该可以工作)。