Задать вопрос
@winers
Начинающий программист

Как исправить ошибку header.js:4 Uncaught TypeError: Cannot read property 'top' of undefined?

Нужно было сделать заливку шапки после прохождения 4 секций на сайте. Сделал но вылазит ошибка в консоле браузера причем на другой странице совсем и ломает верстку на ней. Что не так то?

const transparent = $('.header-transparent').offset().top;
const grey = $('.header-grey').offset().top;

$(document).scroll(function () {
    const scrollPos = $(document).scrollTop();
    if (scrollPos >= transparent && scrollPos < grey) {
        $('.header').addClass('header-transparent');
        $('.header').removeClass('header-grey');
    } else if (scrollPos >= grey) {
        $('.header').removeClass('header-transparent');
        $('.header').addClass('header-grey');
    }
});


в html на 4 секции добавил класс 'header-transparent' где шапка прозрачная и на 2 'header-grey' где с заливкой
  • Вопрос задан
  • 33 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@AndreyChaki
Судя по всему Вы пытаетесь прочитать значение top у несуществующего элемента
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
18 дек. 2024, в 12:39
1000 руб./за проект
18 дек. 2024, в 12:37
10000 руб./за проект
18 дек. 2024, в 12:22
5000 руб./за проект