关于js的问题

 <script>

    function show(li)

    {

      var a=li.getElementsByTagName("ul")[0];


      a.style.display="block";

    }

    function hide(oo)

    {

      var b=oo.getElementsByTagName("ul")[0];

      b.style.display="none";      

    }


  </script>

</head>

<body>

  <ul>

    <li onmouseover="show(this)" onmouseleave="hide(this)">学校概况

    <ul>

      <li>占地面积</li>

      <li>历任领导</li>

      <li>办学地点</li>

    </ul>

这是我用js写的一个下拉菜单,但是有几个问题不是很懂   1、 var a=li.getElementsByTagName("ul")[0];,后面的为什么要加[0](我知道数组的概念,不知道这里是不是指的数组。)2、这里为什么要用getElementsByTagName这个标签,可不可以用getElementById,怎么写?。3、这里的函数为什么要带参数。4、<li onmouseover="show(this)" onmouseleave="hide(this)">this在这里指的什么?

爱IT的广告狗
浏览 1170回答 2
2回答

一毛钱

后面加[0]表示的是第一个元素,因为你的li.getElementsByTagName("ul")找到的是数组,取数组中的第一个元素getElementsByTagName 这个是根据标签查找的,getElementById是根据id找带参数是用来确定是那个元素执行这个操作onmouseover="show(this)“表示的是鼠标移过执行show(this)这个方法,mouseleave="hide(this)"表示鼠标移开执行hide(this)这个方法建议多看看相关知识

幕布斯6393831

XUEJICHU
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript