2016-04-06 32 views

回答

1

我想你想知道如何從JavaScript代碼中做到這一點?如果是這樣,那麼你可以使用jQuery的(':visible')函數。如果沒有,我將其發佈給將來可能正在尋找此用戶的用戶。

$("#selector").is(":visible") // returns true or false 

它檢查以下條件。

  • 樣式是display:none
  • 表格input元件與type="hidden"
  • widthheight組爲0px。
  • 如果任何父母有風格是display:none
1

有不檢查使用Vanilla JS™父元素display: none現成的辦法,因爲:

  1. 您沒有訪問一個Array包含元素的所有父元素(不採用unti :has(),然後與querySelectorAll()一起使用)。

  2. display是一個non-inherited property,這使得getComputedStyle()一個不去(甚至這工作,它將無法檢測到中斷繼承)。

您必須遍歷。