Yuki1333
@Yuki1333
Web full stack Developer

Почему после выполнения плавной прокрутки наверх не работает прокрутка страниы вниз вообще?

Вот скрипт кнопки "наверх":
$("#scrollUp").removeClass("show");
$htmlBody = $("html, body");
$(window).scroll(function() {
    if ($(this).scrollTop() > 500) {
        $("#scrollUp").addClass("show");
        $("#scrollUp").click(function(event) {
            event.preventDefault();
            $htmlBody.animate({
                scrollTop: 0
            }, 1500);
        });
    } else {
        $("#scrollUp").removeClass("show");
    }
});


После выполнения скроллить вообще отказывается((((
  • Вопрос задан
  • 191 просмотр
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Просто у вас обработчик клика ставится каждый раз заново при каждом скролле - вот он и срабатывает 100500 раз.
Вынесите установку обработчика клика из обработки скролла и всё будет ок:

$("#scrollUp").removeClass("show");

$("#scrollUp").click(function(event) {
    event.preventDefault();

    $("html, body").animate({
        scrollTop: 0
    }, 1500);
});

$(window).scroll(function() {
    $("#scrollUp").toggleClass("show", ($(this).scrollTop() > 500));
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
25 нояб. 2024, в 18:18
20000 руб./за проект
25 нояб. 2024, в 18:00
5000 руб./за проект
25 нояб. 2024, в 17:47
5000 руб./за проект