forked from EarMaster/CSSClass
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCSSClass.min.js
More file actions
2 lines (2 loc) · 879 Bytes
/
CSSClass.min.js
File metadata and controls
2 lines (2 loc) · 879 Bytes
1
2
Array.prototype.CSSClassIndexOf=Array.prototype.indexOf||function(a){for(var b=this.length,c=0;c<b;c++)if(this[c]===a)return c;return-1};var p=Element.prototype;p.hasClass||(p.hasClass=function(a){var b=!0,c=this.className.split(" ");a=a.split(" ");for(var d=0;d<a.length;d++)-1===c.CSSClassIndexOf(a[d])&&(b=!1);return b});p.addClass||(p.addClass=function(a){a=a.split(" ");for(var b=0;b<a.length;b++)this.hasClass(a[b])||(this.className=""!==this.className?this.className+" "+a[b]:a[b]);return this});
p.removeClass||(p.removeClass=function(a){var b=this.className.split(" ");a=a.split(" ");for(var c=0;c<a.length;c++)this.hasClass(a[c])&&b.splice(b.CSSClassIndexOf(a[c]),1);this.className=b.join(" ");return this});p.toggleClass||(p.toggleClass=function(a){a=a.split(" ");for(var b=0;b<a.length;b++)this.hasClass(a[b])?this.removeClass(a[b]):this.addClass(a[b]);return this});