<!--NOLIM--><!--NLM064--><!--settings{"iconClass":"buttonFloat","animationSpeed":"10000"}settingsend--><!--ts1741862534773ts--> <script> (function(){ function t_ready(t) { "loading" != document.readyState ? t() : document.addEventListener ? document.addEventListener("DOMContentLoaded", t) : document.attachEvent("onreadystatechange", function() { "loading" != document.readyState && t() }) } t_ready(function() { var btnClass = "buttonFloat"; var a = document.querySelectorAll("." + btnClass + " .tn-atom"); a.forEach(function (btnTitle) { btnTitle.style["overflow"] = 'hidden'; btnTitle.innerHTML = '<span>' + btnTitle.innerHTML + '</span>'; var span = btnTitle.querySelector('span'); span.style["width"] = '50%'; span.style["display"] = 'inline-block'; span.style["text-align"] = 'center'; btnTitle.innerHTML = span.outerHTML + span.outerHTML; btnTitle.innerHTML = '<div>' + btnTitle.innerHTML + '</div>'; var div = btnTitle.querySelector(':scope > div'); div.style['width'] = '200%'; }); var duration = 10000; function customAnimate(object, property, startValue, endValue, sign, time, callback) { var frame_rate = 0.06; var frame = 0; var delta = (endValue - startValue) / time / frame_rate; var handle = setInterval(function() { frame++; var value = startValue + delta * frame; object.style[property] = value + sign; if ((delta < 0 && value <= endValue) || (delta > 0 && value >= endValue)) { clearInterval(handle); if (typeof callback === "function") { callback(); } } }, 1 / frame_rate); } var animateBtnTitle = (btnTitle) => { customAnimate(btnTitle, "margin-left", 0, -100, "%", duration, () => { animateBtnTitle(btnTitle); }); }; var animDivs = document.querySelectorAll("." + btnClass + " .tn-atom > div"); animDivs.forEach(animateBtnTitle); }) })() </script>