0

我很好奇如何向 html 元素添加/删除类?这似乎是一个非常简单的操作。但事实证明,由于某种原因,没有找到方法 removeClass。

所以我需要做的是替换或删除一个旧的并向元素添加一个新的。我怎样才能做到这一点?

4

7 回答 7

1

使用addClassremoveClass

<div class="firstClass" id="uniqeId"></div>

$("div#uniqeId").removeClass("firstClass");
$("div#uniqeId").addClass("Some_Other_Class");
于 2013-04-17T08:23:11.947 回答
1
$('#elementId').addClass('className');
$('#elementId').removeClass('className');

请参阅:http ://api.jquery.com/category/manipulation/class-attribute/

于 2013-04-17T08:23:49.590 回答
1

由于您的问题带有标记,因此您可以使用两个函数:

  1. $(element).removeClass('oldclass')

  2. $(element).addClass('newclass')

如果没有 jQuery,并且在现代浏览器上,您可以使用该classList属性:

element.classList.remove('oldclass')

element.classList.add('newclass')
于 2013-04-17T08:26:14.720 回答
1

您可以使用.toggleClass()同时添加/删除,我的意思是从一个类切换到另一个:

来自文档的描述

根据类的存在或 switch 参数的值,从匹配元素集中的每个元素中添加或删除一个或多个类。

如果这是您的 html:

<div class="aaa">Some text.</div>

然后这个脚本:

$('div.aaa').toggleClass('bbb');

将输出如下:

<div class="aaa bbb">Some text.</div>

或者,如果您这样做:

$('elem').toggleClass('aaa bbb');
     //--------------------^^^---here this class will be added/removed
于 2013-04-17T08:35:56.793 回答
1

用于AddClass添加类,removeClass删除,toggleClass切换(如果存在则删除类,如果不存在则添加):)

于 2013-04-17T08:21:27.233 回答
1

如果您使用 jQuery,请确保它在您的脚本之前加载,然后像这样使用:

$('p').removeClass('myClass yourClass') // remove class
$("p").addClass("myClass yourClass");   // add class

如果你想在这里使用纯 JS,你是:如何将类添加到给定元素?

var d = document.getElementById("div1");
d.className = d.className + " otherclass";
于 2013-04-17T08:21:36.490 回答
1

removeClass方法包含在 jQuery 中,除非您已覆盖它。

$("#someElement").removeClass("someclass");

于 2013-04-17T08:22:20.757 回答