JS没有addclass等,直接用classname赋值不行吗?
JS没有addclass等,直接用classname赋值不行吗?
JS没有addclass等,直接用classname赋值不行吗?
2015-07-22
function hasClass(obj,cls){
return obj.className.match(new RegExp("(\\s|^)"+cls+"(\\s|$)"));
}
function removeClass(obj,cls){
if(hasClass(obj,cls)){ //如果有的话,我们才会去做remove这个动作
var reg=new RegExp("(\\s|^)"+cls+"(\\s|$)");
obj.className=obj.className.replace(reg,"");
}
}
function addClass(obj,cls){
if(!hasClass(obj,cls)){
obj.className+=" "+cls;
}
}
以上是老师原来的代码,换成下面的更简单
function removeClass(obj,cls){
if(obj.className==cls) obj.className="";
}
function addClass(obj,cls){
if(obj.className!=cls) obj.className=cls;
}
举报