Uncaught TypeError: Cannot read property 'firstChild' of null
Подскажите, пожалуйста, как избавиться от ошибки Uncaught TypeError: Cannot read property 'firstChild' of null
Дело в том, что почти все страницы на сайте выводятся якорем, только страница акции и статьи в блоге выводятся отдельно (сайт на вордпресс). Подскажите, скрипт для того чтоб вывести функцию initMap только на одной странице (скрипт для определенного url )или для определенного id ? Скрипт для опр. id не помогает if (document.getElementById('contacts')){ тело функции } |
Julia1991,
Ваш вопрос неизвестно о чем. Ошибка Uncaught TypeError: Cannot read property 'firstChild' of null говорит о том, что вы пытаетесь найти первого потомка какого-то не найденного элемента. Какого - кто знает? Элемента с id = 'contacts'? Проверка по наличию элемента с id вполне работает. Есть элемент - есть алерт
<div id = 'contacts'><img src = "https://javascript.ru/cat/list/donkey.gif"></img>
<div></div>
</div>
<script>
var old = document.getElementById('contacts');
if (old){
alert(old.firstChild.tagName);
}
</script>
Нет элемента - нет алерта
<div id = 'cont'><img src = "https://javascript.ru/cat/list/donkey.gif"></img>
<div></div>
</div>
<script>
var old = document.getElementById('contacts');
if (old){
alert(old.firstChild.tagName);
}
</script>
|
Julia1991,
В этом коде у вас описание функции initMap, и вы ограничиваете формирование описания наличием элемента test. Ошибка же возникает не в описании, а при запуске функции initMap - вот это обращение к функции и надо ограничивать наличием элемента test, аналогично тому, как в моих примерах ограничивается запуск функции alert() (тем более, что описание в этом случае у вас не формируется) |
| Часовой пояс GMT +3, время: 19:31. |