Skip to content

Instantly share code, notes, and snippets.

@Huskie
Created January 23, 2014 16:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Huskie/8582010 to your computer and use it in GitHub Desktop.
Save Huskie/8582010 to your computer and use it in GitHub Desktop.
Plain JavaScript toggleClass function. Relies on hasClass function defined in separate Gist
function toggleClass(element, className) {
var newClass = ' ' + element.className.replace( /[\t\r\n]/g, ' ' ) + ' ';
if(hasClass(element, className)) {
while(newClass.indexOf(' ' + className + ' ') >= 0) {
newClass = newClass.replace(' ' + className + ' ' , ' ');
}
element.className = newClass.replace(/^\s+|\s+$/g, '');
} else {
element.className += ' ' + className;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment