jquery - 100% 宽度的侧导航面板未展开

标签 jquery html css

我正在创建一个需要 100% 宽度导航面板的元素,但我无法将其展开。当我点击汉堡包按钮时,没有任何反应。我认为它可能是我的 z-index 但是,我试图正确地对所有内容进行分层但无济于事。那么,有人知道发生了什么事吗?

/* Navigation Panel */

.navigation-panel {
  height: 100vh;
  width: 0;
  position: absolute;
  display: block;
  z-index: 1;
  top: 0;
  left: 0;
  background: #901536;
  overflow-x: hidden;
  transition: 0.5s;
}
/* Navigation Bar */

.navigation-bar {
  text-align: right;
  padding: 20px;
  color: #fff;
}
.navigation-bar h3 {
  float: left;
  text-transform: uppercase;
}
.navigation-bar span {
  font-size: 20px;
  cursor: pointer;
}
/* Header Section */

.header {
  height: 80vh;
  background: #fff url(../img/bg.jpg);
  background-size: cover;
  text-align: center;
}
<!-- Navigation Panel -->
<div class="navigation-panel" id="sidenav">
  <a href="javascript:void(0)" onClick="openNav()">&times;</a>
  <a id="active">Home</a>
  <a>Who We Are</a>
  <a>Our Teams</a>
  <a>Catch Us</a>
  <a>Info</a>
</div>

<!-- Header -->
<div class="header">
  <div class="navigation-bar">
    <h3>Central Coast Crushers</h3>
    <span onclick="closeNav()">&#9776;</span>
  </div>
</div>

<!-- Scripts -->
<script>
  function openNav() {
    document.getElementById("sidenav").style.width = "100";
  }

  function closeNav() {
    document.getElementById("sidenav").style.width = "0";
  }
</script>

enter image description here

最佳答案

检查你正在调用的函数......它应该是标题中的openNav(),而不是closeNav() 和 JS 宽度分配中的百分比 (%) 符号应该可以。

function openNav() {
  document.getElementById("sidenav").style.width = "100%";
}

function closeNav() {
  document.getElementById("sidenav").style.width = "0";
}
/* Navigation Panel */

body * {
  background-color: black;
}
.navigation-panel {
  height: 100vh;
  width: 0%;
  display: block;
  z-index: 1;
  top: 0;
  position: absolute;
  left: 0;
  background: #901536;
  overflow-x: hidden;
  transition: 0.5s;
}
/* Navigation Bar */

.navigation-bar {
  text-align: right;
  padding: 20px;
  color: #fff;
}
.navigation-bar h3 {
  float: left;
  text-transform: uppercase;
}
.navigation-bar span {
  font-size: 20px;
  cursor: pointer;
}
/* Header Section */

.header {
  height: 80vh;
  background: #fff url(../img/bg.jpg);
  background-size: cover;
  text-align: center;
}
<div class="navigation-panel" id="sidenav">
  <a href="javascript:void(0)" onClick="closeNav()">&times;</a>
  <a id="active">Home</a>
  <a>Who We Are</a>
  <a>Our Teams</a>
  <a>Catch Us</a>
  <a>Info</a>
</div>

<!-- Header -->
<div class="header">
  <div class="navigation-bar">
    <h3>Central Coast Crushers</h3>
    <span onclick="openNav()">&#9776;</span>
  </div>
</div>

关于jquery - 100% 宽度的侧导航面板未展开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40451977/

相关文章:

html - 为什么我不能选择类为 'offer' 的第一个 div?

javascript - 如何用CSS创建一个不受页面缩放影响的div背景

javascript - Cannot POST/test.php 当我试图将数据输入数据库时​​它给了我这个错误

jquery - 使用 jQuery 自行调整导航菜单大小的最简洁方法

jQuery 对话框未关闭

html - 附加带有显示内联 block 的 div,最后一个单词用于包装

javascript - div 元素内带有换行符的文本不起作用

JavaScript 图像背景

Jquery UI 可排序,突出显示选定或拖动的框

python - 即使显示更多链接,也能从 html 获取所有链接