簡體   English   中英

jQuery檢查元素是否具有特定的樣式屬性(顯示)

[英]jQuery check if element has a specific style property (display)

我需要在函數內部有一個if / else語句。 如何檢查元素(例如#cadrage)是否具有顯示樣式屬性? 這是我在網上發現的,然而,它不起作用..

if( $('#cadrage').attr('style').display == 'block' ) {
      // do something
} else {
      // do something
}

jQuery .css()函數似乎就是你想要的。

if( $('#cadrage').css('display') == 'block' ) {
   console.log('It equal block');
} else {
   console.log('It did not equal block');
}

http://jsfiddle.net/SamMonk/FtP6W/

您的代碼不起作用,因為style屬性僅包含內聯樣式,而不包含來自樣式表的樣式。

要獲取計算樣式,可以使用css方法:

$('#cadrage').css('display') == 'block'

不完全是你要求的,但也許你正在尋找...

您可以使用:visible偽選擇器來檢查元素是否可見:

if( $('#cadrage').is(':visible')) {
      // do something
} else {
      // do something
}

請注意,這實際上並不檢查display樣式,而是元素的大小是否可以在頁面中看到。

嘗試這個:

if( $('#cadrage').css('display')== 'block' ) {
      // do something
} else {
      // do something
}

您可以使用以下代碼段獲取元素顯示屬性

$('#cadrage').css('display');

請注意, css方法可以返回元素的任何css屬性,因此非常方便。 因此,您的語句代碼將是:

if( $('#cadrage').css('display').display == 'block' ) {
      // do something
} else {
      // do something
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM