问答详情
源自:5-1 编程挑战

点击回车选取当前li内容给title

看到那段:

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的最后一项,搞不懂。

请大神指点!

提问者:kelvinwong 2016-03-25 11:03

个回答

  • 慕仔7676644
    2016-03-25 11:28:20

    因为i在这里是一个局部变量,变量i只在for循环里面存在。而title.innerHTML = as[index].innerHTML;这一句代码是在for循环的外面,所以改为as[i]的话是找不到i这个变量的,也就无法定位选取li里的内容。