javascript - 无法让导航菜单 slideToggle 工作

标签 javascript html css

我对网页设计中的 javascript 还很陌生,即使经过大量研究也似乎无法弄清楚如何正确地让我的导航菜单滑动切换并将其下方的内容上下推送.理想情况下,如果我能在让菜单显示得与其下方的容器一样宽方面得到一些帮助,那么事情看起来会很棒。

我在 jsfiddle 中没有 slideToggle 代码,但这是我尝试过的事情之一:

$("#menu-button").click(function() {
    $("a").slideToggle(1000);
});

这是我的代码当前设置的 fiddle :https://jsfiddle.net/3uag19p1/18/

最佳答案

我为您更新了 html 的结构。您需要将 #menu-button 放在外面以确保它始终可见

<a id="menu-button" href="javascript:void(0);" class="icon" onclick="myFunction()">&#9776;</a>
        <nav class="site-navigation" id="myTopnav">
          <a href="#home">Home</a>
          <a href="#business">Business</a>
          <a href="#background">Background</a>
          <a href="#info">Info</a>
          <a href="#login">Login</a>

        </nav>

对于slidetoggle and push the content below it below的问题,你只需使用position: absolute。不要为 .site-navigation a 添加位置。这样会导致位置出错。

.site-navigation {
    position: absolute;
   right: -100px;
   top: 100px;
   transition: all 0.3s;

    width: 100px;
}

.site-navigation.responsive {
  right: 51px;
}

使用overflow-x: hidden 隐藏菜单以确保我们没有滚动来查看这个菜单

#page {
    height: 100%;
    background-color: #1c222b;
  overflow-x: hidden;
}

我添加了动画以使其顺利进行

这是 fiddle

关于javascript - 无法让导航菜单 slideToggle 工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49715151/

相关文章:

javascript - 如何在 JavaScript 中以增量方式调用数组的 INDEX 值

java - 验证 HTML 单元格中的数据并根据时间间隔显示消息

html - 图像上的图标 + y 轴定位

javascript - 两个圆圈应该跟随光标——一大一小(有延迟)

html - contenteditable 中的光标在 Chrome 中无法正常运行

javascript - 无法让 requirejs 包含 Backbonejs

javascript - 在 Meteor 中使用 React Layout 将 Prop 传递给曾孙组件

javascript - 使用javascript函数将IP插入数据库?

javascript - 悬停时 clearInterval 并且如果元素具有特定背景

css - 在浏览器中检查元素之前,转换不会完成