我知道這段代碼不起作用,我也知道爲什麼。 不過,我不知道如何解決它:在包含循環變量的循環中定義匿名函數?
的JavaScript:
var $ = function(id) { return document.getElementById(id); };
document.addEventListener('DOMContentLoaded', function()
{
for(var i = 1; i <= 3; i++)
{
$('a' + i).addEventListener('click', function()
{
console.log(i);
});
}
});
HTML:
<a href="#" id="a1">1</a>
<a href="#" id="a2">2</a>
<a href="#" id="a3">3</a>
我希望它打印您單擊的鏈接的數量,而不是僅僅「 4" 。 我寧願避免使用節點(id或內容)的屬性,而是修復循環。
[Coffeescript](http://coffeescript.org/)爲這種情況提供了非常方便的'do'關鍵字。 –