Как объявить переменную, которая еще не отрисована - PullRequest
3 голосов
/ 06 мая 2020

У меня есть проект, в котором используется jQuery. И я пытаюсь преобразовать этот скрипт в Javascript. У меня была следующая строка в этом скрипте.

var a = $("#myImage");

Я изменил его на

var a = document.getElementById("myImage");

, но скрипт не работает, потому что моя страница еще не загрузилась, когда это происходит. Понятия не имею, как это исправить. Любая помощь будет принята с благодарностью. Спасибо.

Ответы [ 5 ]

2 голосов
/ 06 мая 2020
<body onload="var a = document.getElementById("myImage");">
</body>

onload="var a = document.getElementById("myImage");" запускается, когда содержимое полностью загружено. Когда тело полностью загрузится, запустится var a = document.getElementById("myImage");.

1 голос
/ 06 мая 2020

Вы можете, например:

  1. Поместите соответствующий тег <script> перед закрытием тега </body>.
  2. Начните делать что-то , когда документ загружается с помощью обратного вызова .

Лично я предпочитаю 1-й вариант, поскольку, по моему опыту, он работает более стабильно.

1 голос
/ 06 мая 2020

Вы можете включить слушателя в объект document для ожидания загрузки DOM.

document.addEventListener('DOMContentLoaded', function(event) {
  var a = document.getElementById("myImage");
})
1 голос
/ 06 мая 2020

Попробуйте использовать.

window.addEventListener('DOMContentLoaded', function(){

       var a = document.getElementById("myImage");
       //Rest code here

});
1 голос
/ 06 мая 2020

Вам необходимо выполнить скрипт после загрузки страницы.

window.addEventListener("load", function(){
  // .... Add your script here
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...