2011-08-24 60 views

回答

1

的getElementById的()的结果是一个对象

+0

所以一个字符串就像是一个类名或ID名,但是当我在DOM中得到一个元素后,它总是一个对象,对吗? – Zoolander

+1

正确(如果我理解你的问题) - – antlersoft

1

这将被传递在作为对象

1

的对象。您将可以访问该标签的属性。

foo(document.getElementById('someID')); 
function foo(element) { 
    alert(element.href) 
    alert(element.innerHTML); 
} 
1

getElementById返回一个DOM元素。当你将它存储在一个变量中或者作为参数传递给一个函数时,它的类型不会改变。

typeof document.getElementById("someAnchorId") // -> "object" 

document.getElementById("someAnchorId").constructor // -> "HTMLAnchorElement() [...]" 

有时你对待变量的方式会将其转换为字符串意外。例如,如果将它附加到一个字符串,JavaScript会自动将.toString()对象。也许这种行为就是你遇到的。

相关问题