Как реализовать кнопку "наверх" с помощью jquery?

Пользователь

от deshaun_cormier , в категории: JavaScript , год назад

Как реализовать кнопку "наверх" с помощью jquery?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от aubree , год назад

@deshaun_cormier 

Чтобы реализовать кнопку "наверх" с помощью jQuery, нужно выполнить следующие шаги:

  1. Добавить в HTML код кнопку "наверх" и задать ей стили, например:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
<button id="scrollToTopButton">Наверх</button>

<style>
    #scrollToTopButton {
        display: none;
        position: fixed;
        bottom: 20px;
        right: 20px;
        z-index: 99;
        font-size: 18px;
        border: none;
        outline: none;
        background-color: #555;
        color: white;
        cursor: pointer;
        padding: 15px;
        border-radius: 10px;
    }
</style>


  1. Написать функцию, которая будет отображать или скрывать кнопку "наверх", в зависимости от того, находится ли пользователь на верхней части страницы или нет:
1
2
3
4
5
6
7
$(window).scroll(function() {
    if ($(this).scrollTop() > 100) {
        $('#scrollToTopButton').fadeIn();
    } else {
        $('#scrollToTopButton').fadeOut();
    }
});


  1. Написать функцию, которая будет прокручивать страницу вверх при клике на кнопку "наверх":
1
2
3
4
$('#scrollToTopButton').click(function() {
    $('html, body').animate({scrollTop : 0},800);
    return false;
});


В итоге, полный код может выглядеть так:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<button id="scrollToTopButton">Наверх</button>

<style>
    #scrollToTopButton {
        display: none;
        position: fixed;
        bottom: 20px;
        right: 20px;
        z-index: 99;
        font-size: 18px;
        border: none;
        outline: none;
        background-color: #555;
        color: white;
        cursor: pointer;
        padding: 15px;
        border-radius: 10px;
    }
</style>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>

<script>
$(document).ready(function() {
    $(window).scroll(function() {
        if ($(this).scrollTop() > 100) {
            $('#scrollToTopButton').fadeIn();
        } else {
            $('#scrollToTopButton').fadeOut();
        }
    });

    $('#scrollToTopButton').click(function() {
        $('html, body').animate({scrollTop : 0},800);
        return false;
    });
});
</script>


В этом примере кнопка "наверх" будет отображаться, когда пользователь прокручивает страницу на 100 пикселей и более. Если нужно изменить это значение, нужно изменить число в условии if ($(this).scrollTop() > 100).