使用正则实现 addClass(el, cls)、hasClass(el, cls)、removeClass(el,cls)

function hasClass(el, cls) {
    var reg = new RegExp( '(\\s|^)' + cls + '(\\s|$)'   );
    return reg.test(el.className);
}

function addClass(el,cls){
    var reg = new RegExp( '(\\s|^)' + cls + '(\\s|$)'   );
    if(!reg.test(el.className)){
        el.className += " "+cls;
    }
}

function removeClass(el,cls){
    var reg = new RegExp( '(\\s|^)' + cls + '(\\s|$)'   );
    if(reg.test(el.className)){
        var tmp = el.className.replace(cls,'').replace(/\s{2,}/g,' ');
        el.className=tmp;
    }
}

你可能感兴趣的:(使用正则实现 addClass(el, cls)、hasClass(el, cls)、removeClass(el,cls))