原谅这个标题,不知道该写什么。
我有一些代码,例如:
var links=document.getElementsByTagName('a');
for(var i=0;i<links.length;i++){
var cur=links[i];
cur.onmouseover=function(){alert(i);};
}
我记得以前见过类似的东西,但我不知道如何找到它。如果有人问这样的另一个问题,我不会感到惊讶,并且会感谢这个链接。
编辑:问题是它总是在循环结束后提醒“i”是什么。如果有两个链接,则全部警报 2。
编辑:我记得在这里看到过它:http://nathansjslessons.appspot.com/ 。一些很棒的类(class),我建议还没有学过的人都去学一下。
最佳答案
试试这个:
var links=document.getElementsByTagName('a');
for(var i=0;i<links.length;i++){
var cur=links[i];
cur.onmouseover=function(a){
return function(){
alert(a);
}
}(i);
}
关于javascript - 将循环变量作为元素函数中的参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7341035/