检查DIV元素显示样式

时间:2014-07-05 19:28:49

标签: javascript css dom-node

我有一个div容器id="cMsgArea",用于托管通过AJAX动态添加的多个div。我需要控制在任何给定时间可见的子div的数量。

var theDIV = document.getElementById('cMsgArea');
console.log('1)' + theDIV.innerHTML );
var divNode = theDIV.firstChild;
console.log('divNode:' + divNode.innerHTML);
console.log("divNodeDisplay:" + divNode.style.display);
console.log("divNodeStyle:" + divNode.style );
while (divNode.style.display !== "block") {
    divNode = divNode.nextSibling;
}
return divNode;

控制台结果:

1)<div style="float:left; clear:left;">[<i>2014.07.05 13:21:09</i>]DreamGuru:(1)(1)</div><div style="float:left; clear:left;">[<i>2014.07.05 13:21:09</i>]DreamGuru:(2)(1)</div><div style="float:left; clear:left;">[<i>2014.07.05 13:21:14</i>]DreamGuru:(1)(12)</div><div style="float:left; clear:left;">[<i>2014.07.05 13:21:14</i>]DreamGuru:(2)(12)</div> si5.js:140 
divNode:[<i>2014.07.05 13:21:09</i>]DreamGuru:(1)(1) si5.js:142 
divNodeDisplay: si5.js:143 
divNodeStyle:[object CSSStyleDeclaration] si5.js:144 
Uncaught TypeError: Cannot read property 'style' of null

问题 divNode向我显示innerHTML的正确值,但.style.display表示样式为空。如何获得'style.display'值?

更新 帕特里克埃文斯是正确的,我正在看问题的错误结束。也就是说,它已得到解决,但我还要注意,我还必须对将容器添加到容器中的代码进行更改,以明确添加样式包含display:block

1 个答案:

答案 0 :(得分:0)

您可以从此处获取样式信息

$("#yourID").prop('style')