Guest User

Untitled

a guest
May 3rd, 2016
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.19 KB | None | 0 0
  1. function hasClass(elem, className) {
  2. return new RegExp(' ' + className + ' ').test(' ' + elem.className + ' ');
  3. }
  4.  
  5. function addClass(elem, className) {
  6. if (!hasClass(elem, className)) {
  7. elem.className += ' ' + className;
  8. }
  9. }
  10.  
  11. function removeClass(elem, className) {
  12. var newClass = ' ' + elem.className.replace( /[\t\r\n]/g, ' ') + ' ';
  13. if (hasClass(elem, className)) {
  14. while (newClass.indexOf(' ' + className + ' ') >= 0 ) {
  15. newClass = newClass.replace(' ' + className + ' ', ' ');
  16. }
  17. elem.className = newClass.replace(/^\s+|\s+$/g, '');
  18. }
  19. }
  20.  
  21. function toggleClass(elem, className) {
  22. var newClass = ' ' + elem.className.replace( /[\t\r\n]/g, ' ' ) + ' ';
  23. if (hasClass(elem, className)) {
  24. while (newClass.indexOf(' ' + className + ' ') >= 0 ) {
  25. newClass = newClass.replace( ' ' + className + ' ' , ' ' );
  26. }
  27. elem.className = newClass.replace(/^\s+|\s+$/g, '');
  28. } else {
  29. elem.className += ' ' + className;
  30. }
  31. }
  32.  
  33. /* Usage Examples */
  34.  
  35. if(hasClass(myElem, 'some-class')) {
  36. // do something here
  37. }
  38.  
  39. addClass(myElem, 'some-class');
  40.  
  41. removeClass(myElem, 'some-class');
  42. toggleClass(myElem, 'some-class');
Add Comment
Please, Sign In to add comment