【发布时间】:2021-03-17 20:37:46
【问题描述】:
我遇到了一个问题,当我单击按钮时,它只会翻转图标,但只会使不可见的字段在第二次单击时可见。有什么想法吗? (这是一个 gif 来展示我的问题:https://ibb.co/cvz7pWC) 还有我的代码:
function moreSoc() {
var moresoc = document.getElementById("moresoc");
var btnText = document.getElementById("mbtn");
if (moresoc.style.display === "none" ) {
moresoc.style.display = "block";
mbtn.innerHTML = "More ▲";
} else {
moresoc.style.display = "none";
mbtn.innerHTML = "More ▼"
}
}
.morebutton {
border: none;
background: #fff;
color: #111;
font-size: 32px;
}
#moresoc {
display: none;
}
<div class="wrapper more">
<button class="morebutton" id="mbtn" onclick="moreSoc()">More ▲</button>
</div>
<section class="social-links" id="moresoc">
<div class="wrapper">
<h2>Others</h2>
<div class="social-link facebook">
<p>Facebook</p>
</div>
<div class="social-link instagram">
<p>Instagram</p>
</div>
<div class="social-link twitter">
<p>Twitter</p>
</div>
<div class="social-link youtube">
<p>Youtube</p>
</div>
</div>
</section>
【问题讨论】:
-
这是因为在第一次点击时
moreSoc没有设置style.display属性所以它被设置为无,然后在第二次点击时它被设置为阻止。 (style.property只检查直接在元素上设置的样式,与 css 规则无关)
标签: javascript html css button icons