javascript - 将循环变量作为参数传递给元素函数

标签 javascript html

原谅标题,不确定要放什么。

我有一些类似的代码:

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/。好几节课,我建议任何尚未做过的人。

最佳答案

尝试这个:

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/

相关文章:

javascript - 如何处理来自Node.js中大文件的响应?

javascript - JavaScript更改元素类型

Javascript - 对 rgb 值进行排序

javascript - 尝试制作一个html复选框,将一个数字添加到输出字段

javascript - 在 Fineuploader 中将 <ul><li> 更改为 <div>

javascript - 如何使用JavaScript获取客户的国家/地区IP地址?

javascript - 如何确定固定div下的元素?

php - Laravel 5.0 在源代码中最后生成 app.blade.php

javascript - 在资源管理器可视代码中看不到package.json文件

javascript - 智能客户端与 Ext JS