web-dev-qa-db-ja.com

CSSプロパティが特定の値に設定されているかどうかを判断しますか?

このようなjQueryステートメントを決定する方法を疑問に思うだけ

if( $("#test").css('display', 'block') == true) {
   return true;
}

基本的に、要素が現在「display:block」属性を介して表示または非表示にされているかどうかを判断できるようにしたいですか?

35
Tom

つかいます

_if( $("#test").css('display') == 'block') {
_

計算値を返す.css()は常に小文字の結果を返すと確信しています-ドキュメントはこれについて何も述べていません。完全に確認するために、あなたはすることができます

_if( $("#test").css('display').toLowerCase() == 'block') {
_

信頼できる結果を与えるdisplayに頼ることができますが、いくつかのCSSプロパティ定義された方法を常に表示するとは限りませんに注意してください。例えば

_a { color: red }
_

rgb(255,0,0);を使用して照会すると、.css()になります。

65
Pekka 웃

Isvisibleを使用できますが、非表示にもなります

if ( $('#test').is(':visible')){
9
kobe

これをテストする唯一の方法は、実際の値と比較することだと思います。

function displayHidden(elem) {
    return $(elem).css('display') === 'hidden';
}
0
sdleihssirhc