簡體   English   中英

使用jQuery檢查最近的sibling()div上的css類?

[英]Checking for a css class on the nearest sibling() div with jQuery?

有沒有辦法在jQuery中返回最近的sibling()div並檢查當前類?

我有一個視覺垂直項目列表,其中一些項目具有1px邊框(將它們分開 - 高級項目)或根本沒有邊框(標准項目)。 當優質物品夾在兩個標准物品之間時看起來很棒,當兩個或三個優質物品堆疊在一起時,它們之間的邊界最終厚度為2px。

我正在尋找一種方法,使用jQuery或其他方法來檢查當前div上方的<div class="item">是否具有類特色項(因此檢查div是否等於<div class="item featured-item"> )。 從那里,我將設置另一個類名稱將border-top設置為0px並使視覺流動更好一些。

誰能幫我嗎? 對不起,如果這個問題很復雜,很難解釋!

if ($("#current-div").prev().hasClass("someClass")) {
  // logic here
}

.prev()為您提供以前的兄弟姐妹。 你可以這樣做:

if(element.prev().hasClass('featured-item'))

要么

if(element.prev('.featured-item').length > 0)

我不確定你想檢查兄弟節點或父節點。 無論如何,如果“ 上方 ”意味着父母,這將做到:

if( $('div').closest('.item').hasClass('.featured-item') )  { }

對於直接父級,您可能希望使用.parent()而不是.closest()如果這些元素位於同一級別而“ 上方 ”意味着“ 之前 ”使用.prev()

if( $('div').prev(.item).hasClass('.featured-items') ) { }

參考文獻: .prev() ,. closest() ,. parent()

轉發.nextAll([selector])或返回.prevAll([selector])或兩種方式.siblings([selector])

如果div真的是一個兄弟姐妹,那么你應該能做到

if($(this).prev('.item.featured-item').length){
    // yes it is featured
}
else{
   no, not featured
}

如果我找對你, 這個小提琴應該是你想要的。

暫無
暫無

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

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