UNPKG

just-animate

Version:
49 lines (48 loc) 1.59 kB
Object.defineProperty(exports, "__esModule", { value: true }); function element(innerHTML) { var el = document.createElement('div'); el.setAttribute('style', 'display:inline-block;position:relative;text-align:start'); el.innerHTML = innerHTML || ''; return el; } function splitText(target) { var characters = []; var words = []; var elements = typeof target === 'string' ? document.querySelectorAll(target) : target instanceof Element ? [target] : typeof target.length === 'number' ? target : []; for (var i = 0, ilen = elements.length; i < ilen; i++) { var e = elements[i]; if (!e) { continue; } var contents = e.textContent.replace(/[\r\n\s\t]+/gi, ' ').trim(); e.innerHTML = ''; var ws = contents.split(/[\s]+/gi); for (var x = 0, xlen = ws.length; x < xlen; x++) { var w = ws[x]; if (!w) { continue; } if (x > 0) { var empty = element('&nbsp;'); e.appendChild(empty); } var word = element(); words.push(word); e.appendChild(word); for (var y = 0, ylen = w.length; y < ylen; y++) { var c = w[y]; var character = element(c); word.appendChild(character); characters.push(character); } } } return { characters: characters, words: words }; } exports.splitText = splitText;