this到底怎么用的呢。。

来源:10-1 编程挑战

冰镇甜豆浆1

2016-02-05 00:59

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

            //给每一个导航添加一下索引

            aLi[i].index=i;

            //给每一个导航添加鼠标经过事件

            aLi[i].onmouseover=function(){

                //循环所有的导航并且清空激活样式

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

                    aLi[i].className='';

                }

                //给鼠标所在的导航添加激活样式

                this.className='active';

                //循环所有的内容区域 并添加上bd的className  其实这一部的真正目的是为了去掉内容区域上的 on 样式,也就是让所有的div隐藏

                for(var j=0; j<aDiv.length; j++){

                    aDiv[j].className = 'bd';

                }

                //把导航对应的索引位置的 div 显示出来,这里也就是添加index的作用,通过这个索引来找到对应的div 这里的 this 就是指上面鼠标所在的导航

                aDiv[this.index].className = "bd on";

            }

        }

     }



比如这题里面的this/.. 为什么要这么用。。能举一两个简单的别的例子吗

写回答 关注

3回答

  • 小尼采
    2016-03-27 12:32:58

    this就是你点的那个,this.index表示你点的那个li的序号,但是在this.index之前,你需要对每个li进行编号,

    也就是li[i].index=i,简单说就是li[0].index=0,li[1].index=1,li[2].index=2.这样,this.index才能表示出来值

  • sandogeek
    2016-02-10 21:38:29

    this表示对象本身,这里是为每个li绑定点击事件,所以当浏览器调用this时,this代表被点击的li这个对象。

  • 梁子1
    2016-02-06 21:16:32

    this代表着当前对象自己!

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468868 学习 · 22582 问题

查看课程

相似问题