HTMLCollection.item()函数返回null

时间:2015-02-18 12:38:12

标签: javascript angularjs

在一个角度应用程序中,我使用普通的JS来按类名获取元素 代码:

var testElements = document.getElementsByClassName("project-link");
console.log(testElements);

这样打印:

[item: function, namedItem: function]
0: a.project-link.ng-binding
1: a.project-link.ng-binding
...
30: a.project-link.ng-binding
length: 32
__proto__: HTMLCollection

然而。如果我尝试单独打印一个项目,则返回null:

console.log(testElements.item(4));
null

我不明白这段代码有什么问题,我也尝试过Array.prototype.filter.call函数,它也没有用。  有什么想法吗?

2 个答案:

答案 0 :(得分:0)

我通过在窗口加载功能内添加代码来修复此错误:

window.addEventListener("load", function(event) {
   // your code ....
 });

答案 1 :(得分:-1)

setTimeout(() => {
  console.log(testElements.item(4));
}, 0);

尝试一下, 可能有帮助〜
我不知道为什么,但是对我有用。