function truncate(string, limit) { if (!string) return; if (string.length < limit) return string; var substring = string.substring(0, limit); var spacePosition = substring.lastIndexOf(' '); if (spacePosition === substring.length) return substring; else return substring.substring(0, spacePosition) + '...'; } var domLimit = document.querySelector('#range-limit'); var domText1 = document.querySelector('#text-1'); var domText2 = document.querySelector('#text-2'); var domOutput = document.querySelector('#current-limit'); domText1.dataset['original'] = domText1.innerText || domText1.textContent; domText2.dataset['original'] = domText2.innerText || domText1.textContent; domLimit.onchange = function () { var limit = domLimit.value; domOutput.innerText = limit; domText1.innerText = domText1.textContent = truncate(domText1.dataset['original'], limit); domText2.innerText = domText2.textContent = truncate(domText2.dataset['original'], limit); domText1.classList.add('is-changed'); domText2.classList.add('is-changed'); setTimeout(function () { domText1.classList.remove('is-changed'); domText2.classList.remove('is-changed'); }, 400); }