簡體   English   中英

Jquery:如何檢查元素是否具有某些css類/樣式

[英]Jquery: How to check if the element has certain css class/style

我有一個div:

<div class="test" id="someElement" style="position: absolute"></div>

有沒有辦法檢查是否有某個元素:

$("#someElement") 

有一個特定的類(在我的情況下,“測試”)。

或者,有沒有辦法檢查en元素是否具有某種風格? 在這個例子中,我想知道元素是否具有“ position: absolute ”。

非常感謝你!

CSS樣式是鍵值對,而不僅僅是“標簽”。 默認情況下,每個元素都有一組完整的CSS樣式,其中大多數是隱式使用瀏覽器默認值,其中一些是在CSS樣式表中顯式重新定義的。

要獲取分配給元素的特定CSS條目的值並進行比較:

if ($('#yourElement').css('position') == 'absolute')
{
   // true
}

如果您未重新定義樣式,則將獲得該特定元素的瀏覽器默認值。

if($('#someElement').hasClass('test')) {
  ... do something ...
}
else {
  ... do something else ...
}
if ($("element class or id name").css("property") == "value") {
    your code....
}

或者,如果您需要訪問具有該屬性的元素並且它不使用id,您可以使用以下路徑:

$("img").each(function () {
        if ($(this).css("float") == "left") { $(this).addClass("left"); }
        if ($(this).css("float") == "right") { $(this).addClass("right"); }
    })

我找到了一個解決方案:

$("#someElement")[0].className.match("test")

但不知怎的,我相信有更好的方法!

問題是要求兩件事:

  1. 元素具有某種類
  2. 元素具有一定的風格。

第二個問題已經得到解答。 對於第一個,我會這樣做:

if($("#someElement").is(".test")){
    // Has class test assigned, eventually combined with other classes
}
else{
    // Does not have it
}

暫無
暫無

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

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