簡體   English   中英

我如何在這個元素中添加 class 或 id 只知道有多個元素包含“.side-sections .widget”

[英]How do I add class or id in this element just knowing that there is more than one element containing " .sided-sections .widget "

var b = ('data-type');

if ($(b + ":contains('cover')")) {
  $(".sided-sections .widget").addClass("cate-cover")
}

我想修復此代碼,因為當我添加此代碼時,它會向所有包含“.side-sections .widget”的元素添加一個類,所以我想專門用於該類僅添加 data-type='cover' 的內容謝謝

jQuery 選擇器不會返回可在.match()使用的true/false值。 如果你想知道一個選擇器是否找到了任何東西,你需要得到它的長度。

此外, ifthis設置為選擇器匹配的元素。 如果你想設置this ,你需要使用.each()來循環所有匹配的元素。

$(b + ":contains('cover')").each(function() {
    $(this).siblings(".sided-sections .widget").addClass("cate-cover");
});

但您甚至不需要它,因為您可以將.siblings()直接應用於選擇器:

$(b + ":contains('cover')").siblings(".sided-sections .widget").addClass("cate-cover");

如果這不起作用,請將 HTML 添加到您的問題中,並指出哪些元素應該獲得cate-cover類。 您可能將選擇器之間的關系弄錯了。

暫無
暫無

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

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