//获取所有的a标签
var allA = document.getElementsByTagName("a");
for(var i = 0 ;i <allA.length ; i++){
alert("循环正在执行"+i);
allA[i].onclick = function(){
alert("响应函数正在执行"+i);
return false;
};
}
上面这一行代码,我相继给获取到的allA里面添加时间,但是当我运行的时候,会发现在函数里面是有 allA[i] 出现 undefned。这是因为
for循环会在页面加载完成之后立即执行,而函数会在超链接点击的时候才执行,当函数响应时,for已经执行完毕。i的索引已经超出了allAl。 所以推荐使用 this去进行操作。