我有一些按钮,它们存储在一个数组中。然后我循环遍历该数组以向每个按钮添加一个单击事件。每次单击都会提醒 的值i
。我希望这些值是1
,2
等等3
,但它们总是作为一个值返回,以防万一3
。
你能解释一下为什么会发生这种情况以及如何解决它吗?
请看这个jsFiddle。下面的代码:
var theButtons = ['.button.one', '.button.two', '.button.three'];
for (i=0; i<theButtons.length; i++) {
$(theButtons[i]).click(function () {
alert(i); // always returns 3
});
}
请尽可能简单明了地解释它——我是 Javascript 和编程的初学者。