Страницы

Поиск по вопросам

понедельник, 6 января 2020 г.

Как при прокрутке изменить стиль?

#javascript #jquery


Есть следующий код. 

if ($(window).scrollTop(0)) {
 $('#console').css('background','blue'); 
 }
 else {
 $(window).on('scroll',function(){ 
    $('#console').css('background','red'); 
});
 }


При прокрутке должен меняться фон, но при возвращении скролла на самый верх фон должен
возвращаться. 

Он к сожалению не рабочий.
Как можно сделать что бы при прокрутке стиль менялся?
http://jsfiddle.net/FhRKU/39/
    


Ответы

Ответ 1



Проверять .scrollTop() нужно так: if ($(window).scrollTop() == 0); $(window).on('scroll') нужно вызывать не из условия. Сейчас у вас получается, что если прокрутка посетителя находится в самом верху, то обработчик и не объявляется. Всю проверку и смену стилей лучше вынести в отдельную функцию и вызывать ее как при загрузке страницы, так и при скролле страницы. function consoleBG() { if ($(window).scrollTop() == 0) { $('#console').css('background', 'blue'); } else { $('#console').css('background', 'red'); } } consoleBG(); $(window).scroll(function() { consoleBG(); }); #console { width: 100%; position: fixed; height: 20px; padding: 3px; }











































dfsdsd
























trhrth






















rfwerfwe

Комментариев нет:

Отправить комментарий