头已炸~太难了,谁来帮帮我!

来源:10-1 编程挑战

黑色丶毛衣

2015-10-19 20:19

我有两个问题:

    1.选项卡之间不能切换;

    2.标题与列表之间的空白怎么实现?

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>实践题 - 选项卡</title>
    <style type="text/css">
     /* CSS样式制作 */  
        *{margin:0;padding:0;font:normal 16px "微软雅黑";color:#000;}
        ul{list-style-type:none;}
        a{text-decoration:none;}
        
        #tab-list{width:288px;height:190px;margin:20px auto;}
        
        #ul1{border-bottom:2px solid red;margin:0px auto;}
        #ul1 li{display:inline-block;width:90px;line-height:30px;text-align:center;border:1px solid #999;}
        #ul1 li:hover{cursor:pointer;color:red;}
        #ul1 li.active{border-top:2px solid #8b4513;border-bottom:2px solid #fff;} 
        
        #tab-list div{border:1px solid #7396B8;border-top:none;}
        #tab-list div li{height:30px;line-height:30px;text-indent:8px; }
        
        .show{display:block;}
        .hide{display:none;}
    </style>
    <script type="text/javascript">
    // JS实现选项卡切换
    window.onload=function(){
        var aul1=document.getElementById('ul1');
        var nli=nul1.getElementsByTagName('li');
        var adiv=document.getElementById('tab-list');
        var ndiv=adiv.getElementsByTagName('div');
        for(var i=0;i<nli.length;i++){
            nli[i].index=i;
            nli[i].onmouseover=function(){
                for(var i=0;i<nli.length;i++){
                    nli[i].className="";
                }
                this.className='active';
                
                for(var j=0;j<ndiv.length;j++){
                    ndiv[j].className='hide';
                }
                ndiv[this.index].className='show';
            }
        }
    }
    </script>
</head>
<body>
<!-- HTML页面布局 -->
<div id="tab-list">
    <ul id="ul1">
        <li>房产</li>
        <li>家居</li>
        <li>二手房</li>
    </ul>
    <div>
        <ul>
            <li><a href="javascript:;">275万购昌平邻铁三居 总价20万买一居</a></li>
            <li><a href="javascript:;">200万内购五环三居 140万安家东三环</a></li>
            <li><a href="javascript:;">北京首现零首付楼盘 53万购东5环50平</a></li>
            <li><a href="javascript:;">京楼盘直降5000 中信府 公园楼王现房</a></li>
        </ul>
    </div>    
    <div>
        <ul>
            <li><a href="javascript:;">40平出租屋大改造 美少女的混搭小窝</a></li>
            <li><a href="javascript:;">经典清新简欧爱家 90平老房焕发新生</a></li>
            <li><a href="javascript:;">新中式的酷色温情 66平撞色活泼家居</a></li>
            <li><a href="javascript:;">瓷砖就像选好老婆 卫生间烟道的设计</a></li>
        </ul>
    </div>    
    <div>
        <ul>
            <li><a href="javascript:;">通州豪华3居260万 二环稀缺2居250w</a></li>
            <li><a href="javascript:;">西3环通透2居290万 130万2居限量抢</a></li>
            <li><a href="javascript:;">黄城根小学学区仅260万 121平70万抛</a></li>
            <li><a href="javascript:;">独家别墅280万 苏州桥2居优惠价248</a></li>
        </ul>
    </div>
</div>

 
</body>
</html>


写回答 关注

1回答

  • pardon110
    2015-10-19 23:05:36

    两个错误,不能切换是你js代码有书写错误,另外一个你需要在文档加载完毕之后, 给文档li加上默认样式。前者是关键。

    行号29 var nli=aul1.getElementsByTagName('li');                //注意加粗部分,细心些。

    黑色丶毛衣

    强大,每次改代码都好难找出来错误!您有什么方法吗? “在文档加载完毕之后, 给文档li加上默认样式。”这句话不太明白,也就是我的主标题与列表之间的空白并没有实现。

    2015-10-20 09:46:49

    共 1 条回复 >

JavaScript进阶篇

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

468868 学习 · 22582 问题

查看课程

相似问题