Skip to content

Instantly share code, notes, and snippets.

@IgorGavrilenko
Created August 26, 2021 20:06
Show Gist options
  • Save IgorGavrilenko/8d38d223ab88ed8fd7cdd0805acea19b to your computer and use it in GitHub Desktop.
Save IgorGavrilenko/8d38d223ab88ed8fd7cdd0805acea19b to your computer and use it in GitHub Desktop.

Revisions

  1. IgorGavrilenko created this gist Aug 26, 2021.
    15 changes: 15 additions & 0 deletions js hasClass, addClass, removeClass
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,15 @@
    function hasClass(el, className) {
    return el.classList ? el.classList.contains(className) : new RegExp('\\b'+ className+'\\b').test(el.className);
    }
    function addClass(el, className) {
    if (el.classList) el.classList.add(className);
    else if (!hasClass(el, className)) el.className += ' ' + className;
    }
    function removeClass(el, className) {
    if (el.classList) el.classList.remove(className);
    else el.className = el.className.replace(new RegExp('\\b'+ className+'\\b', 'g'), '');
    }

    //!hasClass(el, class)
    //addClass(el, class);
    //removeClass(el, class);