在 JS 中创建一个空 div 的未捕获类型错误

Uncaught Type Error for creating an empty div in JS

所以我有一个生成雪花的脚本,一切正常。我要在这里使用原始 javascript。没有 jquery 任何东西。所以我只想把脚本扔进去,它会创建自己的类并在没有以前制作的样式表的情况下分配它们。所以我创建了元素,然后尝试将其附加到正文,但它说该元素为空。

...

<script>
  this.elem = document.createElement('div');
  document.getElementById('body').appendChild(this.elem);                           //appending flake to body
</script>

...

这会出错。

您需要使用 getElementsByTagName:

document.getElementsByTagName('body')[0].appendChild(this.elem);

如果您要在 <body></body>

内追加

您可以通过将 HTML 标记更改为此来实现它;

<body id="body">
</body>

相同的代码可以正常工作。

Working Fiddle

如果您不想更改 HTML 标记,您可以通过 getElementsByTagName 实现它,如@Bhojendra

所回答