[英]jQuery - 'if' a class has CSS then assign class to a sibling
[英]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.