-6

它总是只显示'null'。我试图找出当您输入警报(元素)时会发生什么,而不是警报(元素.id)或任何其他属性,而是像按钮或td这样的实际元素。

4

3 回答 3

2

那么它不是一个元素,而是 null. 如果它真的是一个元素,它会调用.toString()它,这会产生一个类似的字符串"[object HTMLDivElement]"

于 2012-11-01T14:58:30.977 回答
0

如果传递给alert,它将在放入警告框之前转换为字符串。将 DOM 元素转换为字符串通常会调用Object.prototype.toString,因此您会看到类似"[object HTMLSomeElement]".

相反,如果您看到null,很可能您并没有真正选择 DOM 元素,因为您的element变量具有该值null(不太可能:字符串表示为 的其他东西"null")。这可能是如果您document.getElementById在实际加载 DOM 之前调用(或类似方法),null如果未找到任何元素,则返回。

于 2012-11-01T14:59:55.270 回答
0
<div id="element"></div>
<script>
var element = document.getElementById("element");
alert(element);
</script>

它将显示 [Object HTMLDivElement] 而不是 null,您能否更清楚地说明您的上下文中的元素是什么?

于 2012-11-01T15:00:58.840 回答