您的位置:首页 > Web前端 > JavaScript

原生JS实现hasClass,addClass,removeClass

2016-06-02 17:07 721 查看
1、hasClass

function hasClass(elem, cls){
cls = cls || '';
if(cls.replace(/\s/g, '').length == 0) return false;
return new RegExp(' ' + cls + ' ').test(' ' + elem.className + ' ');
}


2、addClass

function addClass(elem, cls){
if(!hasClass(elem, cls)){
elem.className += ' ' + cls;
}
}


3、removeClass

function removeClass(elem, cls){
if(hasClass(elem, cls)){
var newClass = ' ' + elem.className.replace(/[\t\r\n]/g, '') + ' ';
while(newClass.indexOf(' ' + cls + ' ') >= 0){
newClass = newClass.replace(' ' + cls + ' ', ' ');
}
elem.className = newClass.replace(/^\s+|\s+$/g, '');
}
}


//call the functions
addClass(document.getElementById("test"), "test");
removeClass(document.getElementById("test"), "test")
if(hasClass(document.getElementById("test"), "test")){//do something};

  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: