为了账号安全,请及时绑定邮箱和手机立即绑定

关于js的问题

关于js的问题

爱IT的广告狗 2016-05-12 19:35:46
 <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在这里指的什么?
查看完整描述

2 回答

?
一毛钱

TA贡献156条经验 获得超57个赞

  1. 后面加[0]表示的是第一个元素,因为你的li.getElementsByTagName("ul")找到的是数组,取数组中的第一个元素

  2. getElementsByTagName 这个是根据标签查找的,getElementById是根据id找

  3. 带参数是用来确定是那个元素执行这个操作

  4. onmouseover="show(this)“表示的是鼠标移过执行show(this)这个方法,mouseleave="hide(this)"表示鼠标移开执行hide(this)这个方法

    建议多看看相关知识

查看完整回答
1 反对 回复 2016-05-13
?
幕布斯6393831

TA贡献111条经验 获得超40个赞

XUEJICHU

查看完整回答
反对 回复 2016-05-13
  • 2 回答
  • 0 关注
  • 1169 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信