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

问题出在什么地方了,求指点

如代码所示,为什么这样子底下的内容会被隐藏,而采用第29行代码,同时将第36行改为oDivs[this.index].className="";就可以了。this.index值不也是i吗?为什么我直接用i会出错?求指点

提问者:ShawpLee 2014-11-29 17:16

个回答

  • 偌颜宁
    2014-12-01 14:48:04
    已采纳

    我先说一下oLis[i].index=i; 这句话的意思:

    这句话说的是在页面在家后,将所有的li元素依次添加索引值。

    oLis[i].onmouseover=function()这句话什么意思呢?这句话的意思是:

    给每个li元素添加一个鼠标移入事件

    那么回过头来说为什么说使用i不行呢?原因是:

    在调用函数的时候,i的值是什么,这个函数不知道,而你鼠标滑过哪个列表,浏览器也不知道,所以不行

    那没什么使用this行呢?原因是:

    this就代表鼠标滑过的列表,当鼠标经过哪个列表的时候,被浏览器所洞悉,因此就可以获取到这个元素

  • ShawpLee
    2014-11-29 20:38:57

    @偌颜宁