this关键字指的是什么?如果不用this,应该怎么写?

来源:5-1 编程挑战

qq圐圙2

2018-11-25 14:32


   <script type="text/javascript">

 

window.onload=function(){

var box=document.getElementById('divselect'),

   title=box.getElementsByTagName('cite')[0],

   menu=box.getElementsByTagName('ul')[0],

   as=box.getElementsByTagName('a'),

      index=-1;

    

    // 点击三角时,显示菜单

    title.onclick=function(e){

      // 执行脚本

       e=e||window.event;//浏览器兼容

       menu.style.display='block';

       if(e.stopPropagation){

          e.stopPropagation();

       }else{

        e.cancleBubble=true;

       }

    }  

     

   // 滑过滑过、离开、点击每个选项时

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

    as[i].onmouseover=function(e){

      this.style.background='red';//this!这里this指什么,如果不用this关键字,应该怎么写?

    } 

    as[i].onmouseout=function(){

      this.style.background="#fff";

    }

 

    as[i].onclick=function(e){

     e=e||window.event;

     if(e.stopPropagation){

      e.stopPropagation();

     }else{

      e.cancleBubble=true;

     }

     menu.style.display='none';

     title.innerHTML=this.innerHTML;

    }

   }

 

 

 

   // 点击页面空白处时,收回菜单

    document.onclick=function(){

      menu.style.display='none';

    }

 }

   </script>


写回答 关注

1回答

  • qq圐圙2
    2018-11-25 14:38:43

    这里的this相当于e.target或e.srcElement,自己给自己解答了,谢谢大家

DOM事件探秘

DOM事件?本课程会通过实例来给小伙伴们讲解如何使用这些事件

99545 学习 · 1197 问题

查看课程

相似问题