function removeClass(name){ var $ele = this.ele; if(!$ele){ console.log('>> 找不到该元素: id = ',ele); return !1; } var rex = new RegExp('\\s'+name+'|'+name+'\\s'); $ele.className = $ele.className.replace(rex,''); return this; } function addClass(name){ var $ele = this.ele; if(!$ele){ console.log('>> 找不到该元素: id = ',ele); return !1; } if(this.hasClass(name)){ return !1; }else{ $ele.className = $ele.className + ' ' + name; } return this; } function hasClass(name){ var $ele = this.ele; if(!$ele){ console.log('>> 找不到该元素: id = ',ele); return !1; } var rex = new RegExp('\\s'+name+'|'+name+'\\s'); return $ele.className.search(rex) > -1; } function getId(id){ return getEle(document.getElementById(id)); } function getEle(ele){ return { ele: ele, removeClass: removeClass, addClass: addClass, hasClass: hasClass } return eleObj; }
写这个的目的有两个。
1、有时候不想引入jquery,但是确实有必要对DOM进行class操作。2、装逼。。。