用JavaScript(不使用jQuery)从元素中删除CSS类

58 浏览
0 Comments

用JavaScript(不使用jQuery)从元素中删除CSS类

这个问题已经有了答案

如何使用JavaScript更改元素的类?

有人可以告诉我如何仅使用JavaScript从元素中删除类吗?

请不要用jQuery来回答,因为我不能使用它,而且我也不知道它的东西。

admin 更改状态以发布 2023年5月23日
0
0 Comments

document.getElementById("MyID").className =
    document.getElementById("MyID").className.replace(/\bMyClass\b/,'');

其中MyID是元素的ID,而MyClass是您希望删除的类的名称。


更新:
为了支持包含破折号字符的类名,例如"My-Class",请使用

document.getElementById("MyID").className =
  document.getElementById("MyID").className
    .replace(new RegExp('(?:^|\\s)'+ 'My-Class' + '(?:\\s|$)'), ' ');

0
0 Comments

做到正确和标准的方法是使用 classList。它现在已经在大多数现代浏览器的最新版本中得到了广泛的支持:http://caniuse.com/#search=classList

ELEMENT.classList.remove("CLASS_NAME");


remove.onclick = () => {
  const el = document.querySelector('#el');
  el.classList.remove("red");
}


.red {
  background: red
}


 Test

文档:https://developer.mozilla.org/en/DOM/element.classList

0