Не срабатывает выборка getDocumentById в JavaScript. Соединение html страницы и js страницы я проверил. id запроса и элемента совпадают. Код проверил

js code

html код

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>JS textbook</title>
    <style type="text/css"></style>
    <script type="text/javascript" src="textbooksScript.js"></script>
</head>
<body>

    <h1 id="time">Hello</h1>
    
</body>
</html>

JS код

document.write('Hello world!');

var elem = document.getElementById('time');

alert(elem.innerHTML);

Консоль выдает ошибку

Uncaught TypeError: Cannot read properties of null (reading 'innerHTML') at textbooksScript.js:25

Схема папки и консоль на фото


Ответы (1 шт):

Автор решения: Alexandr

Вам нужно или подключение скрипта перенести в подвал сайта после тега body или добавить обертку к вашему скрипту, которая будет говорить, что запускать скрипт надо после загрузки DOM. Есть еще вариант с async/defer

document.addEventListener('DOMContentLoaded' , ()=>{


  var elem = document.getElementById('time');

  alert(elem.innerHTML);

})
→ Ссылка