js add删除一个类

时间:2015-01-28 00:43:06

标签: javascript jquery html css

我看到这个问题已被问到,但我想知道如何从元素中完全删除id。

例如我有

<div id="page"> some content here </div> 

我想从元素中删除id。因此在页面加载后元素看起来像

<div> some content here </div> 

这就是我试过的

document.getElementById("page").removeClass(" ");

$( "#page" ).addClass( " " );

控制台窗口允许它运行,但元素ID仍然是

3 个答案:

答案 0 :(得分:0)

您首先尝试使用jquery方法混合本机方法,因此它应该创建一个错误( removeClass是一个jQuery方法,所以它只适用于jQuery对象

在第二次尝试时,您尝试删除没有值的类..

您应该使用jquery方法removeAttr()并向其传递要删除的属性名称。

$('#page').removeAttr('class');

将完全删除class属性


如果您要删除id,请使用

$('#page').removeAttr('id');

答案 1 :(得分:-1)

如果不直接编辑dom,你就无法做到这一点。你可以使用addclass和removeclass函数来模拟它。

var addClass = function(el,class_name){
        el.className += " "+class_name;
}
var removeClass = function(el,class_name){
    el.className = el.className.replace(new RegExp(class_name+"|"+class_name,"g"),"");
}

如果你希望它更像面向对象,你可以这样做:

function domElement(el){
    this.el = el;
    this.addClass = function(class_name){
        this.el.className += " "+class_name;
        return this;
    }
    this.removeClass = function(class_name){
        this.el.className = this.el.className.replace(new RegExp(class_name+"| "+class_name,"g"),"");
        return this;
    }
}

然后:

new domElement(document.getElementById("theElement")).addClass("class")

答案 2 :(得分:-1)

检查此示例。它适合你。

enter link description here

Remove class and add new class