Один 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';
}
→ Ссылка