簡體   English   中英

未捕獲的類型錯誤:無法在 HTMLButtonElement 處讀取 null 的屬性“樣式”

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM