HTML:通過JavaScript操縱樣式後更改CSS類的元素不起作用
<input id="myinput" class="cinput" type="image" src="http://www.foodwater.org.au/images/triple-spiral-3-small-button.jpg"/>
<br><br><br><br>
<button id="s">set to visible class</button>
<button id="h">set to hidden class</button>
<button id="db">set display:block</button>
<button id="dn">set display:none</button>
的javascript:
$("#s").on("click", show);
$("#h").on("click", hide);
$("#db").on("click", db);
$("#dn").on("click", dn);
function show() {
document.getElementById("myinput").className = "cinputvis";
}
function hide() {
document.getElementById("myinput").className = "cinput";
}
function db() {
document.getElementById("myinput").style.display = "block";
}
function dn() {
document.getElementById("myinput").style.display = "none";
}
CSS:
.cinput {
position: absolute;
display: none;
top: 0px;
left 0px;
margin: 0px;
border: 1px solid black;
cursor: pointer;
}
.cinputvis {
position: absolute;
display: block;
top: 0px;
left 0px;
margin: 0px;
border: 1px solid black;
cursor: pointer;
}
所以,如果比方說,我使用兩個按鈕來改變元素的類,我可以打開和關閉按鈕,但是一旦我使用其他按鈕來直接操縱display屬性,我不能再使用className按鈕的切換來切換它們。
所以我想知道爲什麼會發生這種情況?不應該改變類名清除所有內容並重新分配css指令?