看到那段:
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';
我看了好久都不明白为什么要用as[index]就能选到当前所在的li项,按我的代码写法的话,index的值应该只有继承了开头声明的index=-1才对啊?
而如果我把as[index]改为as[i]放到for循环里面,无论我怎么选,最后都会选择li的最后一项,搞不懂。
请大神指点!
因为i在这里是一个局部变量,变量i只在for循环里面存在。而title.innerHTML = as[index].innerHTML;这一句代码是在for循环的外面,所以改为as[i]的话是找不到i这个变量的,也就无法定位选取li里的内容。