document.getElementById('#ham') 没有找到元素

document.getElementById('#ham') doesn't find the element

每当我在 javascript 中添加 addEventListener 或切换时,我都会收到“无法读取 **** of null”或“无法读取未定义”。我尝试了许多不同的方法来解决它,删除 javascript 文件并重新创建它,将所有内容放入“addEventListener('DOMContentLoaded, ...') 中,将 javascript 代码移动到 html 文件中. 什么都不行,我不知道为什么。我尝试了他们在互联网上说的所有有效方法。

const hamn= document.getElementById('#ham')

const navLinks= document.getElementById('#navLink')

function openMenu() {
navLinks.classList.toggle('hidden')
}

hamn.addEventListener('click', openMenu)

getElementById 已经知道你要传递一个 id(因此名称中有 ById!),所以你需要从中删除 #传递给它的字符串。 # 仅在 CSS 中用于表示 id 选择器。

如果您使用的是 querySelector(cssSelectorString) 而不是 getElementById,那么您只需要 #,它希望您传递一个有效的 CSS 选择器。

const hamn= document.getElementById('ham')
const navLinks= document.getElementById('navLink')

function openMenu() {
    navLinks.classList.toggle('hidden')
}

hamn.addEventListener('click', openMenu)