[英]Uncaught TypeError: Cannot read property 'style' of null at HTMLButtonElement
當嘗試按導航切換圖標以顯示導航欄內容時,我收到此錯誤。
<nav>
<button id="nav-toggle" class="hamburger-menu">
<span class="strip"></span>
<span class="strip"></span>
<span class="strip"></span>
</button>
<ul class="nav-menu-container">
<li><a href="#">Home</a></li>
<li><a href="#">Games</a></li>
<li><a href="#">Blog</a></li>
<li><a href="#">Forums</a></li>
<li><a href="#">Contact Us</a></li>
</ul>
</nav>
這是我的 javascript:
<script>
document.getElementById('nav-toggle').addEventListener('click', function () {
let navMenu = document.getElementById('nav-menu-container');
navMenu.style.display = (navMenu.offsetParent === null ? 'block' : 'none');
});
</script>
您應該為ul
使用id
屬性,因為您嘗試使用getElementById
來獲取它。
<ul id="nav-menu-container">
您將“nav-menu-container”定義為 class 而不是 id。
nav-menu-container是 class 的名稱,但您像 id 一樣訪問它。
document.getElementById('nav-toggle').addEventListener('click', function () { let navMenu = document.getElementById('nav-menu-container'); navMenu.style.display = (navMenu.offsetParent === null? 'block': 'none'); });
<nav> <button id="nav-toggle" class="hamburger-menu"> <span class="strip"></span> <span class="strip"></span> <span class="strip"></span> </button> <ul id="nav-menu-container"> <li><a href="#">Home</a></li> <li><a href="#">Games</a></li> <li><a href="#">Blog</a></li> <li><a href="#">Forums</a></li> <li><a href="#">Contact Us</a></li> </ul> </nav>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.