2017-10-09 49 views
0

我正在通過一個示例工作,並且遇到了這個問題。Bootstrap摺疊的div初始顯示屬性爲空

我有一個div集最初被摺疊,然後從javascript函數檢查其狀態。我最初測試的是「無」,而且沒有工作。經過一些測試後,我發現測試「」確實奏效。 是這個標準,還是我正在做的事情?

工作版本:

<div id="menuItem" class="well collapse"> 
    <p id="itemDesc">test</p> 
</div> 
... 
function showItem(itemName){ 
if (document.getElementById('menuItem').style.display == ""){ 
    document.getElementById('menuItem').style.display = "block"; 
    } 
} 

回答

0

這是通過您所使用的方法標準。 document.getElementById('element').style.display只檢查元素上的樣式,並且因爲沒有顯示樣式存在於該元素上,所以它返回""。要獲得元素上的計算樣式(即從樣式表),您需要使用屬性getComputedStyle(或IE的currentStyle)。

這個問題/答案對差​​一些非常好的信息以及如何檢查一個良好的功能:

myDiv.style.display returns blank when set in master stylesheet

+0

啊,我想這是有道理的。謝謝你快速的回覆! – user3602839