Если оператор onScroll не работает Javascript

Я новичок в javascript, и я пытаюсь сделать анимацию с помощью javascript onscroll. Я хочу, чтобы заголовок стал фиксированным, а меню мессенджера появлялось внизу страницы при прокрутке. До этого я все делал нормально. Но я также хочу, чтобы окно обмена сообщениями меняло свой цвет, когда я доходил до нижнего колонтитула.

Я думаю, что у меня есть ошибка условия, так как я пытаюсь написать операторы if, которые связаны, и я не смог найти никаких решений.

window.onscroll = function() {scrollFunction()};
function scrollFunction() {
  if (window.innerWidth > 850) {
    if (document.body.scrollTop > headerOffset || document.documentElement.scrollTop > headerOffset) {
       navbar.classList.add('fixed');
       navCont.style.width = ('85%');
       messenger.classList.add('messengerFix');
       logo.style.filter = 'invert(100%)';
       search.style.filter = 'invert(100%)';
       if (document.body.scrollTop === footerOffset || document.documentElement.scrollTop > footerOffset) {
         messenger.style.background = "yellow";
       }
     }
     else {
       navbar.classList.remove('fixed');
       navCont.style.width = ('100%');
       messenger.classList.remove('messengerFix');
       logo.style.filter = 'invert(0)';
       search.style.filter = 'invert(0)';
     }

  }

}

Я ценю любую помощь или любой совет. Спасибо заранее за вашу помощь.

Замените window.onscroll = function() {scrollFunction()}; на window.addEventListener('scroll', scrollFunction, {passive: true}). Это позволит вам добавить несколько прослушивателей прокрутки в ваше окно, и улучшить производительность прокрутки

Nino Filiu 02.04.2019 01:20

Кстати, извините, что сообщаю вам, что код, который вы включили почти не подходит, по стандартам минимальный воспроизводимый пример, который вы должны включать для таких проблем.

Nino Filiu 02.04.2019 01:21

Вы включаете в свой код кучу переменных, но не указываете, что они представляют. Это хорошая идея, чтобы показать, как вы устанавливаете переменные, которые вы используете в своем коде (по крайней мере, укажите, какой тип значения они представляют).

Azer 02.04.2019 04:51
window.onscroll = function() {scrollFunction()}; ---> window.onscroll = scrollFunction;
ziggy wiggy 02.04.2019 05:22
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
4
113
0

Другие вопросы по теме