<script>
// Текст лоадера
const loadingText = "<br>Počkejte <br><small> až se stránka načte";
// Сам код лоадера в стринге
const tmpl = '<style>#p_prldr{position: fixed;left: 0;top: 0;right:0;bottom:0;background: #000;z-index: 1111111110;}.contpre small{font-size:25px;}.contpre{width: 250px;height: 100px;position: absolute;left: 50%;top: 48%;margin-left:-125px;margin-top:-75px;color:#fff;font-size:40px;letter-spacing:-2px;text-align:center;line-height:35px;}#p_prldr .svg_anm{position: absolute;width: 41px;height: 41px;background: url("data:image/svg+xml;base64,PCEtLSBCeSBTYW0gSGVyYmVydCAoQHNoZXJiKSwgZm9yIGV2ZXJ5b25lLiBNb3JlIEAgaHR0cDovL2dvby5nbC83QUp6YkwgLS0+Cjxzdmcgd2lkdGg9IjM4IiBoZWlnaHQ9IjM4IiB2aWV3Qm94PSIwIDAgMzggMzgiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmIj4KICAgIDxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMSAxKSIgc3Ryb2tlLXdpZHRoPSIyIj4KICAgICAgICAgICAgPGNpcmNsZSBzdHJva2Utb3BhY2l0eT0iLjUiIGN4PSIxOCIgY3k9IjE4IiByPSIxOCIvPgogICAgICAgICAgICA8cGF0aCBkPSJNMzYgMThjMC05Ljk0LTguMDYtMTgtMTgtMTgiPgogICAgICAgICAgICAgICAgPGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIiB0eXBlPSJyb3RhdGUiIGZyb209IjAgMTggMTgiIHRvPSIzNjAgMTggMTgiIGR1cj0iMXMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIi8+CiAgICAgICAgICAgIDwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==") center center no-repeat;background-size:41px; margin: -16px 0 0 -16px;}</style><div id="p_prldr"><div class="contpre"><span class="svg_anm"></span>' + loadingText +'</small></div></div>';
// Создание и дефолтные стили диалогового окна, можешь менять как хочешь
const dialog = document.createElement('div');
dialog.innerHTML = tmpl;
dialog.style.background = '#fff';
dialog.style.position = 'fixed';
dialog.style.display = 'block';
dialog.style.position = 'fixed';
dialog.style.top = 0;
dialog.style.left = 0;
dialog.style.width = '100%';
dialog.style.height = '100%';
dialog.style.zIndex = 999999;
dialog.id = 'absolute';
// `template-article` специфический класс для шопифая, в других случаях надо выбирать body
document.getElementsByClassName('template-article')[0].prepend(dialog);
setTimeout(function () {
// Таймаутит диалоговое через 3 секунды, пока так, позже будет более правильное решение
dialog.style.display = 'none';
}, 3000)
</script>