练习题答案

来源:1-5 编程练习

拉格朗日之都

2016-03-15 15:10

<!doctype html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
<style type="text/css">
    *{margin:0;
     padding:0;
     font-size:13px;
     list-style:none;}

.menu{width:210px;
      margin:50px auto;
      border:1px solid #ccc;}

.menu p{height:25px;
        line-height:25px;
        font-weight:bold;
        background:#eee;
        border-bottom:1px solid #ccc;
        cursor:pointer;
        padding-left:5px;}

.menu div ul{display:none;}

.menu li{height:24px;
         line-height:24px;
         padding-left:5px;}
</style>

</head>
<body>
<div id="menu">
<div>
<p style="background: #f66;color:#fff">Web前端</p>
<ul style="display:block">
<li>JavaScript</li>
<li>DIV+CSS</li>
<li>jQuery</li>
</ul>
</div>
<div>
<p>后台脚本</p>
<ul>
<li>PHP</li>
<li>ASP.net</li>
<li>JSP</li>
</ul>
</div>
<div>
<p>前端框架</p>
<ul>
<li>Extjs</li>
<li>Esspress</li>
<li>YUI</li>
</ul>
</div>
</div>
<script type="text/javascript">
    function $(id){
        return typeof id=== 'string'?document.getElementById(id):id;
    }
window.onload = function(){

      // 将所有点击的标题和要显示隐藏的列表取出来
        var nav = $('menu').getElementsByTagName('p');
        var list = $('menu').getElementsByTagName('ul');
       
     //如果列表数目和内容数目不等
        if(nav.length!=list.length)
            return;
     // 遍历所有要点击的标题且给它们添加索引及绑定事件
        for(var i=0;i<nav.length;i++){
            nav[i].setAttribute('index',i);
            nav[i].onclick = function(){
                for(var j=0;j<nav.length;j++){
                    nav[j].style.background='#eee';
                    nav[j].style.color='#000';
                    list[j].style.display='none';
                }
                this.style.background='#f66';
                this.style.color='#fff';
                list[this.getAttribute('index')].style.display="block";
            }
        }
     // 获取点击的标题上的索引属性,根据该索引找到对应的列表

     // 判断该列表,如果是显示的则将其隐藏,如果是隐藏的则将其显示出来

  }
</script>
</body>
</html>


写回答 关注

1回答

  • luckyforever
    2016-04-03 12:56:39

    good好

Tab选项卡切换效果

本课程详细介绍网页页面中最流行常用的tab切换效果

65469 学习 · 533 问题

查看课程

相似问题