【发布时间】:2012-02-11 03:59:02
【问题描述】:
我一直在尝试使用 for 循环将 click 事件添加到一系列 divs 中。 divs 是动态创建和加载的。每个 div 都应该调用自己的回调函数。但是似乎每个div都附加到最终事件侦听器并调用最终事件侦听器的回调函数。
下面是我的基本代码:
for(index=0; index<divs.length; index++) {
divs[index].addEventListener("click", function(){console.log(divs[index].getAttribute("id"));}, true); //capture click event
}
点击时,每个 div 只会显示最终 div 的 id。
【问题讨论】:
-
阅读有关 javascript 闭包的信息,并编辑您的代码。这是一个变量范围问题。
标签: javascript addeventlistener