—»     —»   Разрабатываем анимированную кнопку «Вверх» на jQuery
  Раздел: Меню и Навигация   Комментариев: 8  

Разрабатываем анимированную кнопку «Вверх» на jQuery



Важно добиться хорошего взаимодействия посетителей с вашим веб-сайтом, это позволяет привлечь их внимание, и заставить их вновь вернуться на эти страницы. Наилучшим способом организации взаимодействия можно считать те случаи, когда веб-сайтом максимально приятно и удобно пользоваться, так как если ваш сайт скучный и у него, к тому же, непонятная навигация, то посетители точно уйдут.

Встречаются веб-сайты с огромными объемами информации, и ее приходится пролистывать достаточно долго. Веб-сайты типа Google+, где можно бесконечно прокручивать страницу вниз, очень раздражают, если вам вновь потребуется вернуться в самый верх страницы. Здесь можно либо обновить страницу, либо перетащить ползунок скроллинга.

Разработчикам подобных веб-сайтов стоит подумать над более гуманным решением по возврату к верху страницы. Это можно реализовать с помощью кнопки «Вверх».

В нашем сегодняшнем руководстве мы расскажем вам о процессе разработки анимированной кнопки для возврата к самому верху страницы.

Кнопка

Для начала давайте создадим саму кнопку.

<a href="#" class="scrollToTop">Scroll To Top</a>

Теперь мы можем оформить кнопку следующим кодом CSS.

.scrollToTop{
width:100px;
height:130px;
padding:10px;
text-align:center;
background: whiteSmoke;
font-weight: bold;
color: #444;
text-decoration: none;
position:fixed;
top:75px;
right:40px;
display:none;
background: url('arrow_up.png') no-repeat 0px 20px;
}
.scrollToTop:hover{
text-decoration:none;
}

Это расположит и зафиксирует кнопку «Вверх» в верхнем правом углу страницы.

Как видно по коду CSS, параметр display выставлен на none, так что кнопка будет спрятана в браузере. Вы поймете, для чего мы сделали именно так, как только мы рассмотрим код jQuery.

jQuery-код

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

Затем нам потребуется создать события клика, и применить его к кнопке, чтобы у пользователей была возможность одним кликом вернуться в самый верх страницы нашего веб-сайта.

Скопируйте и вставьте следующий javascript-файл для того, чтобы организовать функционирование javascript.

$(document).ready(function(){

//Check to see if the window is top if not then display button
$(window).scroll(function(){
if ($(this).scrollTop() > 100) {
$('.scrollToTop').fadeIn();
} else {
$('.scrollToTop').fadeOut();
}
});

//Click event to scroll to top
$('.scrollToTop').click(function(){
$('html, body').animate({scrollTop : 0},800);
return false;
});

});

Здесь используется функция прокрутки, которая запускается тогда, когда пользователь начинает прокручивать окошко. Затем мы сможем поработать с позицией окошка, используя функцию scrollTop. Когда позиция смещается больше, чем на 100 единиц, нам нужно отобразить кнопку.

Мы отображаем кнопку, используя функцию fadeIn – это и будет наш первый виток анимации. Если параметр scrollTop меньше 100, это дает нам знать, что окно находится близко к верху страницы, поэтому кнопка нам не нужна.

Теперь мы можем добавить событие клика к кнопке прокрутки. Вместе кликом по данной кнопке, нам нужно чтобы страница возвращалась к самому верху, а также запускалась функция анимации. Для того чтобы вернуть окно обратно к верху, нам нужно изменить параметр scrollTop на 0.

Это всё, что вам потребуется для создания этой очень полезной функции. Ознакомьтесь с демо и, если вас не затруднит, в комментариях продемонстрируйте нам свои творения.

Демо
Обнаружили ошибку или мёртвую ссылку?
Выделите проблемный фрагмент мышкой и нажмите CTRL+ENTER.
В появившемся окне опишите проблему и отправьте уведомление Администрации ресурса.
Нужна органическая вечная ссылка из данной статьи? Постовой?
Подробности здесь
Вам понравился материал? Поблагодарить легко!
Будем весьма признательны, если поделитесь этой статьей в социальных сетях:

Ключевые тэги: jQuery, кнопки
Опубликовал Design FactoRy   Прочитано (раз): 8443   |   Оставлено комментариев: 8
Источник материала / оригинал статьи   Распечатать
Другие статьи и новости по теме:
Комментарий #1: 14 февраля 2012 @ 13:51
Написал: sidorovich — группа: Гости  
На сайте с: --   |   Публикаций: 0   |   Комментариев: 0
ICQ: --- не указано ---
Хорошая идея.
Комментарий #2: 14 февраля 2012 @ 20:47
Написал: Арчи — группа: Гости  
На сайте с: --   |   Публикаций: 0   |   Комментариев: 0
ICQ: --- не указано ---
Хорошая идея, лучше смотреться буд когда анимированая.
Комментарий #3: 15 февраля 2012 @ 07:23
Написал: senator3821 — группа: Гости  
На сайте с: --   |   Публикаций: 0   |   Комментариев: 0
ICQ: --- не указано ---
Спасибо сайту за полезную и интересную информацию, уверен, что найду ей хорошее применение ))
Комментарий #4: 15 февраля 2012 @ 18:35
Написал: Liqor — группа: Гости  
На сайте с: --   |   Публикаций: 0   |   Комментариев: 0
ICQ: --- не указано ---
Спасибо!) Как раз думал применить теперь есть где подсмотреть)
Комментарий #5: 16 февраля 2012 @ 14:55
Написал: djking — группа: Гости  
На сайте с: --   |   Публикаций: 0   |   Комментариев: 0
ICQ: --- не указано ---
Спасибо за отличное решение! Обязательно применю в новом проекте!
Комментарий #6: 17 февраля 2012 @ 01:32
Написал: krapan88 — группа: Читатели  
На сайте с: 31.01.2010   |   Публикаций: 0   |   Комментариев: 59
ICQ: --- не указано ---
народ, а без яваскрипта как-нибудь это можно реализовать? через якорь # пробовал, но это резко кидает вверх илиперезагружает страницу.
Комментарий #7: 18 марта 2012 @ 12:19
Написал: Picnic — группа: Гости  
На сайте с: --   |   Публикаций: 0   |   Комментариев: 0
ICQ: --- не указано ---
Эммм... А arrow_up.png где взять-то?
Комментарий #8: 18 марта 2012 @ 12:32
Написал: Design FactoRy — группа: Администраторы  
На сайте с: 21.07.2009   |   Публикаций: 3300   |   Комментариев: 500
ICQ: --- не указано ---
Добавление комментария
Уважаемые пользователи!
При добавлении комментариев на сайт Вам следует учитывать следующее - все комментарии проверяются Администрацией на предмет отсутствия спама. При обнаружении признаков спама, в оставленном Вами комментарии, сам комментарий будет незамедлительно удалён, а Ваш IP-адрес будет забанен без предупреждения! Учётные записи пользователей, рассылающих спам, блокируются/удаляются без права последующего восстановления.

С уважением, Администрация сайта.
* = поля обязательны к заполнению
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Вопрос : Назовите месяц October по-русски
Подтверждение кода безопасности :

Включите эту картинку для отображения кода безопасности
обновить, если не виден код


Популярные публикации


















Свежие шаблоны сайтов каждый день
С миру по нитке
«    Сентябрь 2017    »
ПнВтСрЧтПтСбВс
 123
45678910
11121314151617
18192021222324
252627282930