我正在尝试开发一些脚本来切换链接到我的HTML文档的css的display
属性。这是为了显示/隐藏文档中的导航栏。但是当我运行此脚本时,控制台会为[object HTMLDivElement]
显示document.getElementById
,这实在令人困惑。
我认为这不是什么大问题,但我的头现在有点阴天......
function navbarCollapse() {
var navbarCollapsable = document.getElementById('nav-collapsable');
var navbarCollapsableVisibility = navbarCollapsable.style.display;
var invisible = "none";
if (navbarCollapsableVisibility !== invisible) {
navbarCollapsableVisibility = invisible;
} else {
navbarCollapsableVisibility = "block";
};
}
答案 0 :(得分:3)
这应该归还。有关document.getElementById:https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementById
,请参阅MDN的文档返回值
元素
是对Element对象的引用,如果是带有的元素,则为null 指定的ID不在文档中。
答案 1 :(得分:1)
刚刚解决了。正如@AronF指出的那样,[object HTMLDivElement]
是我应该看到的。问题是我不应该因为某种原因将navbarCollapsable.style.display
存储在var中。这样做并通过了:
function navbarCollapse() {
var navbarCollapsable = document.getElementById('nav-collapsable');
if (navbarCollapsable.style.display !== "none") {
navbarCollapsable.style.display = "none";
} else {
navbarCollapsable.style.display = "block";
};
}