kiinlam
4/18/2016 - 9:53 AM

dom class util

dom class util

/**
 * @param {HTMLElement} el
 * @param {String} cls
 * @returns {Array|{index: number, input: string}}
 */
function hasClass(el, cls) {
    return el.className.match(new RegExp('(\\s|^)(' + cls + ')(\\s|$)'));
}

/**
 * @param {HTMLElement} el
 * @param {String} cls
 */
function addClass(el, cls) {
    if (!hasClass(el, cls)) {
        el.className += ' ' + cls;
    }
}

/**
 * @param {HTMLElement} el
 * @param {String} cls
 */
function removeClass(el, cls) {
    if (hasClass(el, cls)) {
        el.className = el.className.replace(RegExp('(\\s|^)(' + cls + ')(\\s|$)'), '$3');
    }
}