在一个角度应用程序中,我使用普通的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函数,它也没有用。 有什么想法吗?
答案 0 :(得分:0)
我通过在窗口加载功能内添加代码来修复此错误:
window.addEventListener("load", function(event) {
// your code ....
});
答案 1 :(得分:-1)
setTimeout(() => {
console.log(testElements.item(4));
}, 0);
尝试一下,
可能有帮助〜
我不知道为什么,但是对我有用。