问答详情
源自:3-1 JS实现特效

this.className为什么不能写成Lis[i].className

就是视频中的这段代码,有点费解,求指点


        window.onload = function () {

            // 编写JS代码

            Lis = document.getElementsByTagName("li");

            for(i=0; i<Lis.length; i++){

                Lis[i].onmouseover = function(){

                    this.className = "lihover";

                }

                Lis[i].onmouseout = function(){

                    this.className = "";

                }

            }

        }


提问者:慕粉3764854 2016-08-22 13:55

个回答

  • 慕后端9132915
    2016-08-22 16:32:19
    已采纳

    在js里,this表示的是当前对象,而Lis[i]是变化的,这样写的话只对最后的li元素起作用