【发布时间】:2018-07-31 00:15:35
【问题描述】:
我将 getElementsByClassName 中的所有元素存储到一个变量中,我想我可以 foreach 循环这个变量以从中获取每个 id。但它不起作用。
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>
我做错了什么?我收到错误消息说功能不起作用
【问题讨论】:
-
在控制台中你应该已经看到你做错了什么:
"Uncaught TypeError: el.forEach is not a function"你正在使用一个不存在的函数;而是将活动的 NodeList 转换为数组,然后使用Array.prototype.forEach()。 -
stackoverflow.com/questions/15843581/… 我认为这篇文章在这种情况下更相关。
标签: javascript