在 JavaScript 中是否document.getElementById
返回一个活动的 DOM 元素?出于性能原因,我很想知道
问问题
2844 次
1 回答
14
标准和“实时”之间的区别通常用于元素列表。document.getElementById
返回对 DOM 节点的单个对象引用。获取节点后,引用将始终指向同一节点。
<div id="foo"></div>
以 JS 为例:
var foo,
bar;
foo = document.getElementById('foo'); //gets the div
bar = document.getElementById('bar'); //null
foo.setAttribute('id', 'bar');
console.log(foo.id); //'bar'
console.log(bar.id); //TypeError
引用不会仅仅因为元素的 ID 可能已更改而更新。
document.getElementsByTagName
这与返回带有给定标签的元素列表之类的东西形成对比。当元素被添加到 DOM 或从 DOM 中删除时,列表将自动更新。
于 2013-10-02T19:33:31.073 回答