如何从onclick html属性中的页面中删除一个类?

时间:2010-12-01 08:39:58

标签: javascript

那么如何从页面上的所有HTML元素中删除一个类?

我需要在onclick html元素中使用它。所以:

<div onclick="remove class 'someClass' from all elements on the page"></div>

3 个答案:

答案 0 :(得分:1)

假设jQuery ......

HTML:

<div id="my_button">Click me</div>

JS:

$('#my_button').click(function() {
  $('.some_class').removeClass('some_class');
});

答案 1 :(得分:1)

从元素中删除一个类

 element.className = element.className.replace(/className/g,'');

你必须编写一个递归函数来使用childNodes属性遍历页面中的所有元素

 ReomoveClass(element, ClassName)
 {
        element.className = element.className.replace(new RegExp(ClassName,'g'),'');
        for(var i=0; i<element.childNodes;i++)
        {
             ReomoveClass(element.childNodes[i], ClassName)
        }
 }

答案 2 :(得分:1)

以下是原始JavaScript解决方案(从文档中的所有元素中删除some_class类):

onclick="
for (var i = 0, elements = document.getElementsByTagName('*'); i < elements.length; i++) {
  var attr = elements[i].getAttribute('class'),
      newAttr = attr.replace(/\bsome_class\b/i, '');
  if(newAttr != attr) elements[i].setAttribute('class', attr);
}
"