function toggleText() {
let button = document.querySelector('.toggle-text-button');
let text = document.querySelector('#text');
button.addEventListener('click', () => {
if(text.hasAttributes('hidden') == true){
console.log('adad')
text.hidden = '';
}
text.hidden = true;
})
}
toggleText()
<button class="toggle-text-button">Нажмите, чтобы спрятать/показать текст</button>
<div id="text">Текст</div>
- 如果条件被触发,为什么文本不出现?
也许这样会更好?
如果条件被触发,为什么文本不出现?
因为条件
if
满足后你有条件,text.hidden = true
又把文字隐藏了这对你有用
每次
text.hidden = true
单击按钮时都会执行该行,因为它位于if
对于解决方案,这条线需要放在一个 block
else
中。另一个缺点是与使用有关
.hasAttributes
,此方法不接受任何参数,如果true
元素至少有一个any属性则返回。要检查特定属性的存在,您需要使用该方法
.hasAttribute
你需要这样做:
好吧,或者,如果还有其他事情需要做: