我有以下代码:
<div id="0">click here</div>
<div id="1">click here</div>
<div id="2">click here</div>
for(var i=0;i<3;i++){
document.getElementById(i).addEventListener("click",function(){
alert(i);
});
}
如何让我的回调功能提醒1,然后是2然后是3?它总是警告3,我需要一种方法来保存每次迭代时“i”的值。
答案 0 :(得分:0)
全局计数器变量可用于计算点击次数。
var counter = 1;
for(var i=0;i<3;i++){
document.getElementById(i).addEventListener("click",function(){
alert(counter++);
});
}
答案 1 :(得分:0)
for(var i=0;i<3;i++) {
document.getElementById(i).addEventListener("click", (function(j) { alert(j); }).bind(undefined,i));
}
这个也应该有效:
{{1}}