2017-11-30 26 views
0

なぜこのコードは機能しないのですか?1ブロックを解決する方法が表示され、ブロックが隠れるのはなぜですか?ブロック間の切り替え

function vsd(){ 
    var asd = document.getElementById("asd"); 
    var vsd = document.getElementById("vsd"); 
    var psd = document.getElementById("psd"); 
    var vps = document.getElementById("vps"); 
    var asp = document.getElementById("asp"); 
    var vsp = document.getElementById("vsp"); 
    var sad = document.getElementById("sad"); 
    if (vsd.style.display === "none") { 
     vsd.style.display ="block"; 
     asd.style.display = "none"; 
     psd.style.display = "none"; 
     vps.style.display = "none"; 
     asp.style.display = "none"; 
     vsp.style.display = "none"; 
     sad.style.display = "none"; 
    } else { 
     vsd.style.display = "none";} 
} 
+0

コンソールにエラーを見ていますか? – danwellman

答えて

0

VSDが画面に表示されていることを確認してください:なし負荷時のモードとELSE文にPSDをバック表示するために考えて、VSD何とか

0

私はcssクラスhide

であなたのアプローチを交換しました

window.onload = vsd(); 
 

 
function vsd(){ 
 
    var asd = document.getElementById("asd"); 
 
    var vsd = document.getElementById("vsd"); 
 
    var psd = document.getElementById("psd"); 
 
    var vps = document.getElementById("vps"); 
 
    var asp = document.getElementById("asp"); 
 
    var vsp = document.getElementById("vsp"); 
 
    var sad = document.getElementById("sad"); 
 
    console.log($("#vsd")[0].attr('style')) 
 
    if (vsd.classList.contains("hide") { 
 
     vsd.classList -= "hide"; 
 
     asd.classList += "hide"; 
 
     psd.classList += "hide"; 
 
     vps.classList += "hide"; 
 
     asp.classList += "hide"; 
 
     vsp.classList += "hide"; 
 
     sad.classList += "hide"; 
 
    } else { 
 
     vsd.classList += "hide"; 
 
    } 
 
}
.hide { 
 
    display : none; 
 
}
<button id="vsd" class="">vsd</button> 
 
<button id="asd" class="hide">asd</button> 
 
<button id="psd" class="hide">psd</button> 
 
<button id="vps" class="hide">vps</button> 
 
<button id="asp" class="hide">asp</button> 
 
<button id="vsp" class="hide">vsp</button> 
 
<button id="sad" class="hide">sad</button>