【发布时间】:2020-11-16 01:19:15
【问题描述】:
我有一个 div 和按钮,我第一次单击按钮没有响应,然后再次单击并显示
function banne() {
var ban = document.getElementById("content");
//consloe.log(ban.style.display === "none");
if (ban.style.display === "none") {
ban.style.display = "block";
} else {
ban.style.display = "none";
}
}
.banner-content {
display: none;
height: 100px;
color: #fff;
background: #1b1b1b;
}
<button class="banner" onclick="banne()"> know </button>
<div class="banner-content" id="content">
Some Data
</div>
这里控制台值显示错误值,但我在 div 类 banner-content 中写入了内联样式 style="display:none",它可以工作,为什么不采用样式表值,知道吗?
【问题讨论】:
-
无法回答。我会在这里写一个函数。这就是你需要的 - - - - - function banne(){ var ban = document.getElementById("content"); if (window.getComputedStyle) { var spStyle = getComputedStyle(ban, ''); } else { var spStyle = ban.currentStyle; } if (ban.style.display === "none") { ban.style.display = "block"; } else { ban.style.display = "none"; } console.log(spStyle.display); }
标签: javascript html css