我将一个getElementsByClassName中的所有元素都存储到一个变量中,我想我可以循环这个变量来获取其中的每个it。但它不起作用。
var el = document.getElementsByClassName("machine_btn_over_layer");
el.forEach(test);
var test = function() {
console.log("test");
}<div class="machine_btn_over_layer"></div>
<div class="machine_btn_over_layer"></div>
<div class="machine_btn_over_layer"></div>
<div class="machine_btn_over_layer"></div>
我做错了什么?我收到一个错误,说函数不工作
发布于 2018-02-20 23:27:23
使用文档来帮助您!document.getElementsByClassName
名称变量elements =document.getElementsByClassName(
)
elements是找到的元素的活动HTMLCollection。
在HTMLCollection文档中,您应该注意到的第一件事是它没有一个名为forEach的方法。但是它确实有一个名为length的属性
HTMLCollection.length
返回集合中的项数。
和一个名为item的方法
将给定索引处的特定节点返回到列表中。如果索引超出范围,则返回null。
所以你应该能够做到这一点:
for (var i = 0; i < el.length; i++) test(el.item(i));或者使用阵列糖:
for (var i = 0; i < el.length; i++) test(el[i]);https://stackoverflow.com/questions/48888574
复制相似问题