浅析原生js模仿addclass和removeclass

 1 //判断有没有class
 2 hasClass(elements, cName) {
 3   return !!elements.className.match(new RegExp("(\\s|^)" + cName + "(\\s|$)")); // ( \\s|^ ) 判断前面是否有空格 (\\s | $ )判断后面是否有空格 两个感叹号为转换为布尔值 以方便做判断
 4 },
 5 //移除class
 6 removeClass(elements, cName) {
 7   if (this.hasClass(elements, cName)) {
 8     elements.className = elements.className.replace(new RegExp("(\\s|^)" + cName + "(\\s|$)"), " "); // replace方法是替换
 9   }
10 },
11 //添加class
12 addClass(elements, cName) {
13   if (!this.hasClass(elements, cName)) {
14     elements.className += " " + cName;
15   }
16 },

 

posted @ 2018-06-28 11:54  秀&莹&锐  阅读(152)  评论(0编辑  收藏  举报