javascript - 向下推内容的全宽子菜单

标签 javascript jquery html css

我已经创建了一个菜单,我在这里想要实现的是一个全宽子菜单,whcig 在点击时推送内容并显示子菜单。我在创建全宽子菜单时遇到问题,而且当我单击上一个菜单内容时仍然显示。这是我的 fiddle :http://jsfiddle.net/he4a0eL4/1/

HTML

<div id="wrapper">
    <ul id="nav">
        <li>link1
            <div class="sub">
                <ul>
                    <li>link1</li>
                    <li>link2</li>
                    <li>link3</li>
                </ul>
            </div>
        </li>
        <li>link2
            <ul class="sub">
                <li>link1</li>
                <li>link2</li>
                <li>link3</li>
            </ul>
        </li>
        <li>link3
            <ul class="sub">
                <li>link1</li>
                <li>link2</li>
                <li>link3</li>
            </ul>
        </li>
    </ul>
    <div class="clear"></div>
</div>
<div class="content">content</div>

CSS

body{margin:0;}
    #wrapper{background:#ccc;}
ul{
    margin:0;
    padding:0;
    list-style:none;
}

#nav > li
{
    float:left;
    position:relative;
}

.sub
{
    display:none;
    widh:100%;
}
.clear
{
clear:both;
}
.content
{
height:300px;
    background:#ff0000;
    width:100%;
}

JS

$(document).ready(function() {
    $("#nav > li", this).click(function() {
        $(this).find(".sub").slideToggle();
    });
});

最佳答案

抱歉,我可能误解了你的问题。 当你想要全宽子菜单时,你只需要设置 CSS 属性 width:100%;,或者不是吗?这是你所期望的吗?

<div id="wrapper">
<ul id="nav">
    <li>link1
        <div class="sub">
          <ul style="float:left;width:100%;">
              <li>link1</li>
              <li>link2</li>
              <li>link3</li>
          </ul>
          <ul style="float:left;width:100%;">
              <li>link1</li>
              <li>link2</li>
              <li>link3</li>
          </ul>
        </div>
    </li>
    <li>link2
        <ul class="sub">
            <li>link1</li>
            <li>link2</li>
            <li>link3</li>
        </ul>
    </li>
    <li>link3
        <ul class="sub">
            <li>link1</li>
            <li>link2</li>
            <li>link3</li>
        </ul>
    </li>
</ul>
<div class="clear"></div>
</div>
<div class="content">content</div>

关于javascript - 向下推内容的全宽子菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35619426/

相关文章:

javascript - 使用 jquery 捕获文档点击事件

javascript - 里程表数字格式

javascript - 我如何找出哪个字符在退格键的 tinymce 编辑器中被删除(在它实际被删除之前)?

javascript - jQuery或Java声音通知/警报

html - CSS - 使 div 水平对齐

c# - 在没有 html 注入(inject)的情况下包装到 anchor 标记 2.5 M

javascript - Cordova 视频捕获 - 如何获取 blob 数据?

javascript - 从 ng-click 调用的多个函数也使用惰性求值

javascript - 将参数传递给 forEach.call 中的函数

javascript - 如何使用javascript在头像上创建下拉菜单?