0

id="cMsgArea"AJAX を介して動的に追加される複数の div をホストするために使用される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、スタイルがnullであることを示しています。「style.display」値を取得するにはどうすればよいですか?

アップデート Patrick Evans は正しかったのですが、私は問題の間違った終わりを見ていました。とはいえ、解決されましたが、スタイルに include を明示的に追加するために、コンテナーに div を追加していたコードを変更する必要があったことにも注意してくださいdisplay:block

4

1 に答える 1

0

ここからスタイル情報を取得できます

$("#yourID").prop('style')
于 2016-10-27T08:54:29.087 に答える