簡體   English   中英

如何在jQuery中刪除帶有異常的類

[英]How to removeClass with exception in jQuery

我有一個小jQuery的情況。 因此,我想刪除所有塊類,但幾乎沒有例外-如果此div / block有一些類,則每個類都會被刪除,但一個不指定。 我正在嘗試類似的方法,但是它不起作用。

$('#rounded_items').removeClass(function(){
    $('#rounded_items').not.getElementsByClassName('small_menu');
}).addClass('main_menu');

你能幫助我嗎?

尚不清楚您到底想做什么,但我最好的猜測是這樣的:

$('#rounded_items:not(.small_menu)').removeClass().addClass('main_menu');

...這將替換剛才的所有類名main_menu與ID的所有項目rounded_items (!)除了那些類small_menu

請注意,ID 應該是唯一的 不能那么強調。 因此,按ID選擇並期望多個元素沒有意義,以便您可以進一步按類進行過濾。

ID應該是唯一的,因此您所要做的就是在刪除類之前檢查要定位的單個元素是否沒有該類:

var isSmall = $('#rounded_items').is('.small_menu');
$('#rounded_items').attr('class', isSmall ? 'main_menu' : '');

您不能僅檢查對象是否具有不應刪除的此類。 如果有,請刪除所有類並添加所需的類。 像這樣:

if ($("#item").hasClass("neededClass")){
   $("#item").removeClass();
   $("#item").addClass("neededClass");
}

我不確定這是否是您想要的。

使用以下代碼

$('#rounded_items').removeClass(function(){
     var el = $('.small_menu');
    $('#rounded_items').not(el);
}).addClass('main_menu');

暫無
暫無

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

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