onkeyup事件中的循环为何要这样写?
document.onkeyup = function(event){
event = event||window.event;
if(event.keyCode==40){
index++;
if(index>=as.length) index=0;
for(var i=0; i<as.length;i++){
as[i].style.background = '#fff';
}
as[index].style.background = '#ccc';
}
if(event.keyCode==38){
index--;
if(index<0) index=as.length-1;
for(var i=0; i<as.length;i++){
as[i].style.background = '#fff';
}
as[index].style.background = '#ccc';
}
if(event.keyCode==13){
for(var i=0; i<as.length;i++){
as[i].style.background = '#fff';
}
title.innerHTML = as[index].innerHTML;
menu.style.display = 'none';
}
}
}
为何每次都要在循环中先重置背景颜色
for(var i=0; i<as.length;i++){
as[i].style.background = '#fff';
}
,不能直接写成下面这样呢?
for(var i=0; i<as.length;i++){
var index=i;
as[index].style.background = '#ccc';
}