javascript - So implementieren Sie jqs Addclass und Removeclass in js. Beispielsweise ist es ursprünglich class="aa" und muss in class="aa bb" geändert werden.
怪我咯
怪我咯 2017-07-05 10:44:24
0
5
1120

So implementieren Sie jqs Addclass und Removeclass in js. Beispielsweise ist es ursprünglich class="aa" und muss in class="aa bb" geändert werden

怪我咯
怪我咯

走同样的路,发现不同的人生

Antworte allen(5)
曾经蜡笔没有小新

js有个classlist的接口
MDN链接

不过你要考虑下兼容性。

習慣沉默

if (!this.hasClass(obj, class)) obj.className += " " + class;

ringa_lee

elem.className
或者
elem.classList
感觉classList比较好,elem.classList.add('bb')就可以了
另外,jQuery源码是通过className实现的addClass和removeClass
最后加一句,这种偏基础的问题要学会自己百度google

学习ing
function addClass(ele,name){
        if(ele && name){
            var cn = ele.className;
            if(!cn){
                ele.className = name;
            }else if(cn.indexOf(name) === -1){
                ele.className = cn.replace(/\s*$/,' '+name);
            }
        }
}
function removeClass(ele,name){
        var reg1 = new RegExp('^\\s*\\b'+ name +'\\b\\s*$');
        var reg2 = new RegExp('^\\s*' + name+'\\b');
        var reg3 = new RegExp('\\b'+ name + '\\s*$');
        var reg4 = new RegExp('\\s*\\b'+name+'\\b\\s*');
        if(ele && name){
            var cn = ele.className;
            if(cn && cn.indexOf(name) > -1){
                if(reg1.test(cn)){
                    ele.className = '';
                }else if(reg2.test(cn)){
                    ele.className = cn.replace(reg2,'');
                }else if(reg3.test(cn)){
                    ele.className = cn.replace(reg3,'');
                }else{
                    ele.className = cn.replace(reg4,' ');
                }
            }
        }
};
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage