我正在尝试更改属性"隐藏"在1000毫秒的超时后,通过javascript将元素设置为true,但它不会更改属性。是的超时工作正常我已经测试过,所有功能都是正确的!只有使用setAttribute()函数的最后一部分不起作用。
HTML:
<div id="gamePanel" hidden="true">
<div id="bb">
<div id="map">
</div>
</div>
<p id="status"> Welcome Back! </p>
<input type="button" id="changeBio" value="Change Map" />
<input type="button" id="saveGame" value="Save Game" />
<div id="statusBar"> Status </div>
</div>
使用Javascript:
var panel = document.querySelector("#gamePanel");
panel.setAttribute("hidden","false");
答案 0 :(得分:3)
使用
panel.removeAttribute("hidden");
由于hidden
属性为boolean attribute,(spec以这种方式定义),
元素上存在布尔属性表示true value,缺少属性表示false值。
然后,它没有true
和false
值。它可以存在(即hidden
或hidden="hidden"
),也可以不存在。
或者,更好的是,您可以更改hidden
属性:
panel.hidden = false;
答案 1 :(得分:1)
就个人而言,我会改用它:
var panel = document.getElementById("gamePanel");
panel.style.display = 'block';
或隐藏它:
panel.style.display = 'none';