JavaScript-所有DOM操作函数都返回null/empty

JavaScript - all DOM manipulating functions return null / empty?

本文关键字:返回 null empty 函数 所有 DOM 操作 JavaScript-      更新时间:2023-12-13

我正在从"Web开发人员的专业Javascript"学习JS,我不能玩DOM树,因为它似乎不起作用。

下面是我在本地测试的一个例子:

http://jsfiddle.net/y5nfL/

它在jsfiddle上提醒"DIV",而在本地,我在控制台中得到了这个:

未捕获的类型错误:无法读取空的属性"tagName"

这是我的index.html:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>JS sandbox</title>
        <script type="text/javascript" src="script.js"></script>
    </head>
    <body>
        <div id="myDiv"></div>
    </body>
</html>

和script.js

var div = document.getElementById("myDiv");
alert(div.tagName);

我错过了什么?我一直在尝试其他东西,比如克隆等,但getElementById()每次也会返回null。。。

执行脚本时,DOM在脚本标记之后不包含任何内容。在尝试访问DOM之前,您需要等待DOM完全就绪

另一个更简单的选项是将脚本标记移动到文档的末尾,就在</body>之前。