慕粉18764815087
2016-07-31 00:00
for(var i = 0; i < aLi.length; i++) {
aLi[i].index = i;
aLi[i].onmouseover = function() {
for(var i = 0; i < aLi.length; i++) {
aLi[i].className = "";
}
this.className = "active";
for(var j = 0; j < aDiv.length; j++) {
aDiv[j].className = "hide";
}
aDiv[this.index].className = "show";
}
} for(var i = 0; i < aLi.length; i++) {
aLi[i].index = i;
}
aLi[i].onmouseover = function() {
for(var i = 0; i < aLi.length; i++) {
aLi[i].className = "";
}
this.className = "active";
for(var j = 0; j < aDiv.length; j++) {
aDiv[j].className = "hide";
}
aDiv[this.index].className = "show";
}另外我还想问
为什么原来的程序可以一直检测onclick事件?
请问比如说我把标签移到[1]房产上的时候,整个程序之前之后和现在是怎样运行的?
奥,前两个问题我可能有点懂了,aLi[i].onmouseover = function()这个函数在第一个循环里是定义了这个事件发生时执行函数。
谢谢!!
你放在循环里,是给每一节点都设置一个onmouseover事件,在循环外面,是给一个节点设置onmouseover事件.(另外var i在for里不是一个临时的变量,在for外也可以使用,所以放在循环外i==aLi.length,所以根本没有做到设一个节点onmouseover事件)
JavaScript进阶篇
469171 学习 · 22584 问题
相似问题