java吧 关注:1,227,906贴子:12,685,688

【求助】JavaScript ,请问列表怎么才能不重叠

只看楼主收藏回复

视频来自:百度贴吧


来自iPhone客户端1楼2016-12-11 13:24回复
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=GBK">
    <title>Untitled Document</title>
    <style type="text/css">
    dl dd{
    margin:0px;
    }
    dl{
    /*使dl只能显示一行文字的高度,以隐藏其要展开的部分*/
    height:16px;
    }
    /*
    预定义一些样式,类选择器,便于给标签进行样式的动态加载。
    */
    .open{
    /*设置显示超出元素区域的内容*/
    overflow:visible;;
    }
    .close{
    /*设置隐藏超出元素区域的内容*/
    overflow:hidden;
    }
    dl dt{
    color:#ff8000;
    }
    </style>
    </head>
    <body>
    <script type="text/javascript">
    /*
    * 在多个列表下,一次只需要展开一个列表其他列表都关闭。
    * 怎么保证开一个,而关其他呢?
    * 思路:
    * 1,获取所有的dl节点。
    * 2,遍历这些节点,只对当前的dl进行展开或者闭合操作,其他节点都进行闭合操作。
    */
    function list(node){
    //获取对当前的dl节点。
    var oDlNode = node.parentNode;
    //获取所有的dl节点。
    var collDlNodes = document.getElementsByTagName("dl");
    //遍历所有dl。
    for(var x=0; x<collDlNodes.length; x++){
    if(collDlNodes[x]==oDlNode){
    if(oDlNode.className == "close"){
    oDlNode.className = "open";
    }else{
    oDlNode.className = "close";
    }
    }else{
    collDlNodes[x].className = "close";
    }
    }
    }
    </script>
    <dl class="close">
    <dt onclick="list(this)">显示条目一</dt>
    <dd>展开列表内容1</dd>
    <dd>展开列表内容1</dd>
    <dd>展开列表内容1</dd>
    <dd>展开列表内容1</dd>
    </dl>
    <dl class="close">
    <dt onclick="list(this)">显示条目二</dt>
    <dd>展开列表内容2</dd>
    <dd>展开列表内容2</dd>
    <dd>展开列表内容2</dd>
    <dd>展开列表内容2</dd>
    </dl>
    <dl class="close">
    <dt onclick="list(this)">显示条目三</dt>
    <dd>展开列表内容3</dd>
    <dd>展开列表内容3</dd>
    <dd>展开列表内容3</dd>
    <dd>展开列表内容3</dd>
    </dl>
    </body>
    </html>


    来自iPhone客户端3楼2016-12-11 13:47
    回复
      楼上原码,请各位朋友帮忙看看


      来自iPhone客户端4楼2016-12-11 13:49
      回复
        我滴哥,你们都在哪里啊,快来帮忙看看啊😂


        来自iPhone客户端5楼2016-12-11 14:09
        回复
          可以在open加上padding-bottom:16px;就不会重叠


          IP属地:中国香港6楼2016-12-11 14:20
          收起回复
            求大神指点


            来自iPhone客户端8楼2016-12-11 18:33
            回复
              框架插件做不要自己写 自己写的多费事 写的也不好看


              9楼2016-12-11 20:47
              回复
                这css吧


                IP属地:福建来自iPhone客户端10楼2016-12-11 22:16
                回复
                  .open{
                  /*设置显示超出元素区域的内容*/
                  overflow:visible;;
                  }
                  .close{
                  /*设置隐藏超出元素区域的内容*/
                  overflow:hidden;
                  }
                  open和close时给设置高度。


                  12楼2016-12-12 20:14
                  收起回复
                    背景色


                    IP属地:北京来自iPhone客户端15楼2016-12-24 00:56
                    回复
                      用谷歌浏览器 或 火狐 的 试试
                      开发的 从来不用360 或 IE


                      IP属地:四川16楼2016-12-28 22:06
                      收起回复
                        好的👌


                        来自iPhone客户端17楼2017-01-01 13:24
                        回复
                          好的👌


                          来自iPhone客户端18楼2017-01-01 13:24
                          回复
                            好的👌


                            来自iPhone客户端19楼2017-01-01 13:25
                            回复
                              用jQuery多简单。


                              IP属地:广东来自iPhone客户端20楼2017-01-01 13:36
                              收起回复