2016-05-26 53 views
0

在這段代碼中css顯示屬性div id =「sub」已經更改爲none,但運行js代碼後顯示它的css顯示值爲空( 「」)爲什麼div id =子顯示值是「」而不是none

<head> 
<style> 
    #title { 
     height: 60px; 
     background-color: green; 
    } 
    #sub { 
     height: 100px; 
     background-color: orange; 
     display: none ; 
    } 
<!-- display for sub set to none--> 
</style> 
</head> 
<body> 
    <div id="title" onmousedown= "showhide('sub')"></div> 
    <div id= "sub" ></div> 

<script> 
    function showhide(box) { 
     var border = document.getElementById(box); 
     alert('div '+ box+' got'); 


    if(border.style.display ===""){ 
     alert(border.style.display); 
     alert ('if is true so display changes to block'); 
     border.style.display = "block"; 

    } 
    else{ 
     alert(border.style.display); 
     alert ('else is true so display changes to " "'); 
     border.style.display = ""; 
    }   
</script> 
</body> 

回答

0

您需要使用getComputedStyle

var elem = document.getElementById(box); 
if (elem.currentStyle) { 
    var displayStyle = elem.currentStyle.display; 
} else if (window.getComputedStyle) { 
    var displayStyle = window.getComputedStyle(elem, null).getPropertyValue("display"); 
} 
alert(displayStyle); 
相關問題