javascript - 默认侧边栏收起
问题描述
我是 Web 应用程序的新手,所以我对 HTML、CSS 和 JS 的了解还不足以自己处理问题。我按照一些 YT 教程创建了可折叠的侧边栏,但我不知道为什么它默认折叠并且我无法打开它。我认为问题在于我不知道我的代码到底发生了什么。你能告诉我我做错了什么并帮助我理解这应该如何工作吗?
HTML:
<div id="wrapper">
<div id="sidebar-wrapper">
<ul class="sidebar-nav">
<li>
<a href="#selectGameSubmenu" data-toggle="collapse" aria-expanded="true" class="dropdown-toggle">
<i class="fa fa-fw fa-gamepad"></i> Select something</a>
<ul class="collapse list-unstyled">
<li>
<a href="#">Link1</a>
</li>
<li>
<a href="#">Link2</a>
</li>
<li>
<a href="#">Link3</a>
</li>
</ul>
</li>
<li>
<a href="#"><i class="fa fa-fw fa-home"></i> Home</a>
</li>
<li>
<a href="#"><i class="fa fa-fw fa-user"></i> My profile</a>
</li>
<li>
<a href="#"><i class="fa fa-fw fa-question-circle"></i> FAQ</a>
</li>
<li>
<a href="#"><i class="fa fa-fw fa-phone"></i> Contact</a>
</li>
<li>
<a href="#"><i class="fa fa-fw fa-sign-out-alt"></i> Logout</a>
</li>
</ul>
</div>
<!-- Page content -->
<div id="page-content-wrapper">
<!-- some code -->
</div>
</div>
CSS:
#sidebar-wrapper{
z-index: 1;
position: fixed;
width: 0;
height: 100%;
overflow-y: hidden;
transition: 0.15s;
background-color: var(--black) ;
font-size: 1em;
}
#sidebar-wrapper .sidebar-header {
padding: 20px;
background: var(--black);
}
#page-content-wrapper{
width: 100%;
position: absolute;
padding: 15px;
transition: 0.15s;
color: black;
}
#wrapper.menuDisplayed #sidebar-wrapper{
width: 250px;
}
#wrapper.menuDisplayed #page-content-wrapper {
padding-left: 250px;
}
.sidebar-nav{
padding: 0;
list-style: none;
}
.sidebar-nav li{
text-indent: 20px;
line-height: 40px;
}
.sidebar-nav li a{
display: block;
text-decoration: none;
color: var(--gray);
}
.sidebar-nav ul li a {
font-size: 0.9em;
display: block;
color: var(--lightGray)
}
.sidebar-nav li a:hover{
color: #fff;
background: var(--gray);
}
.sidebar-nav ul li.active > a, a[aria-expanded="true"] {
color: #fff;
background: var(--deepBlue);
}
JS:
$("#menu-toggle").click(function(e){
e.preventDefault();
$("#wrapper").toggleClass("menuDisplayed");
});
解决方案
您最初可以将类添加menuDisplayed
到导航栏(使用 id #wrapper
),因此在页面加载时,它将被显示。
<div id="wrapper" class="menuDisplayed">
推荐阅读
- mysql - 在 MySQL 数据库版本 5.5.62 上使用 SUBSTRING_INDEX 语法
- python - python:如何计算自基准日期以来经过的小时数的新日期?
- docker - Docker 使用文件主机创建卷以覆盖容器文件
- python - 我如何在 Numpy Sum 中使用 if 条件
- html - 翻译跨越屏幕+在屏幕上分别转换
- c# - 如果对象包含自定义属性,Newtonsoft.Json 序列化对象将抛出 FileNotFoundException
- r - 在 ggplot 中使用条形图表示变量的两个分量
- c++ - 在 CMake 中使用 find_package 时是否会明确包含标头?
- swift - lldb 可选日期它永远不会为零
- vba - CATIA VBA - 试图列出保护的长度