Один js-файл на весь сайт приводит к ошибкам
У меня на сайте везде подключается один и тот же js-файл:
<script defer src="/js/engine.js"></script>
На главной странице у меня есть элементы с id="img-0" и id="img-0", но на остальных страницах сайта их нет, поэтому в консоле браузера я получаю ошибки: Uncaught TypeError: document.getElementById(...) is null и Uncaught TypeError: document.querySelector(...) is null.
Участок проблемного кода:
window.onload = function() {
document.querySelector('#img-0').className = 'show';
};
document.getElementById('img-2').onclick = function() {
document.getElementById('img-1').classList.toggle('hide');
document.getElementById('img-2').classList.toggle('hide');
};
Как в таких случаях принято поступать?
Ответы (1 шт):
Автор решения: fixer
→ Ссылка
Обычно сначала проверяют существование элемента.
var img = document.querySelector('#img-0');
if(img != null){
img.className = 'show';
}