UNPKG

mintui-toast

Version:
68 lines (56 loc) 1.68 kB
export function addClass (el, className) { if (hasClass(el, className)) { return } let classArr = el.className.indexOf(' ') < 0 ? [el.className] : el.className.split(' '); classArr.push(className) el.className = classArr.join(' ').replace(/ /g,' ') } export function removeClass (el, className) { let els = document.getElementsByClassName(el) for (let i = 0; i < els.length; i++) { let classNames = className.indexOf(',')==-1?[className]:className.split(',') for(let j = 0; j < classNames.length;j++){ if (hasClass(els[i], className) && classNames[j] == className){ els[i].setAttribute('class', els[i].getAttribute('class').replace(classNames[j], '')) } } } } export function hasClass (el, className) { let reg = new RegExp('(^|\\s)' + className + '(\\s|$)') return reg.test(el.className) } export function getData (el, name, value) { const attr = 'data-' + name if (value) { return el.setAttribute(name, value) } else { return el.getAttribute(attr) } } let elementStyle = document.createElement('div').style let vendor = (() => { let transformNames = { webkit: 'webkitTransform', Moz: 'MozTransform', O: 'OTransform', ms: 'msTransform', standard: 'transform' } for (let key in transformNames) { if (elementStyle[transformNames[key]] !== undefined) { return key } } return false })() export function prefixStyle (style) { if (vendor === false) { return false } if (vendor === 'standard') { return style } return vendor + style.charAt(0).toUpperCase() + style.substr(1) }