Я пытаюсь создать предварительный загрузчик gif для проекта, который у меня есть. В ходе курса, предшествующего текущему, нам было разрешено разместить JS в строке, например:
<script>
let loader = document.getElementById("loader");
window.addEventListener("load", function () {
loader.style.height = "400px";
loader.style.width = "400px";
loader.style.borderRadius = "50%";
loader.style.visibility = "hidden";
});
</script>
Это выполнялось со следующими HTML и CSS:
HTML
<div id="loader">
<img src="images/pepper.gif" alt="loading animation"/>
</div>
CSS
#loader {
height: 2000px;
width: 2000px;
background-color: black;
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
z-index: 999;
transition: all .5s;
}
#loader img {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
Это сработало просто отлично. Однако в этом курсе мы просим поместить наш JS во внешний файл.
Я связал файл следующим образом
<script src="js/index.js"></script>
в теге head HTML.
JS выглядит следующим образом (мы должны использовать IIFE):
(function () {
"use strict";
let loader = document.getElementById("loader");
window.addEventListener("load", function () {
loader.style.height = "400px";
loader.style.width = "400px";
loader.style.borderRadius = "50%";
loader.style.visibility = "hidden";
});
})();
Моя проблема в том, что теперь gif будет оставаться на экране навсегда, когда во внешнем файле , Когда он был встроен, он немного загружался, а затем отображал содержимое сайта. Может ли кто-нибудь помочь мне исправить это?