这个问题设计一个闭包的概念...
因为funtion里面是个内部函数...其实在内部函数里面这个i的值都是aTr.length的值..
所以在
for(var i=0;i{
aTr[i].onmouseover=function ()
{
//你可以在这里测试一下
alert(i);//你会发现i一直是aTr.length
this.style.background="red"
}//如果这里用的是aTr[i],事实上i的值就是aTr.length,假如length是5,其实这里就是aTr[5].style.background="red" 所以其他的元素都没有被绑上,但是又没有aTr[5]这个元素(长度5,那坐标就是0-4,没有5),所以哪个都没起作用
}
aTr[0].onmouseover=function ()
{aTr[0].style.background="red"}//这个就没什么好说了,你都固定aTr[0]了
这个不明白的,你去看一下闭包的概念
白菜编辑部
1 | 2 |
3 | 4 |