Проблема с .innerHTML
Есть такой html код:
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="script.js"></script>
</head>
<body>
<div id="text">Text</div>
</body>
</html>
И JavaScript код:
var text = document.querySelector('#text');
text.onclick = function(){
text.innerHTML = 'Some Content';
}
Пока пытаюсь понять основы. По идее при клике на блок #text должно поменяться содержимое блока. Но оно не меняется. Что не так? |
F12 и смотрим в консоль, там всё написано.
По факту проблема в том, что скрипт выполняется сразу там, где его вызвали, по мере разбора документа. Потому, на момент вызова, никакого <div id="text"> ещё не существует. Решение: разместить <script> внизу страницы либо использовать событие загрузки документа. |
Я хочу от тебя детей! Спасибо, уже второй день себе мОзги насилую в попытках понять, а в видеоуроках такой нюанс никто не раскрывает, как минимум троих авторов смотрел.
|
| Часовой пояс GMT +3, время: 08:29. |