Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) jQuery Как добавить в существующий скрипт автоматическую прокрутку страницы вверх?

Как добавить в существующий скрипт автоматическую прокрутку страницы вверх?


     11.01.2016    jQuery    628

вопрос
Здравствуйте всем!
Помогите, пожалуйста, добавить в скрипт автоматическую прокрутку страницы вверх. Т.е., при открытии модального окна необходимо, чтобы страница автоматически поднималась вверх.
Вот сам скрипт:
<script>
jQuery(document).ready(function () {
//Set the lightbox position in the center of screen
jQuery('.lightbox').css({
    position: 'absolute',
});
jQuery('a.authorization-open').click(function(e) {
    e.preventDefault();
    jQuery('.lightbox').fadeIn(800);
    jQuery('.authorization-overlay').fadeIn(800);
});
jQuery('a.authorization-close').click(function(e) {
    e.preventDefault();
    jQuery('.lightbox').fadeOut(800);
    jQuery('.authorization-overlay').fadeOut(800);
});
var delay = 30; // Time 30 sec.
$('.lightbox').delay(delay * 1000).fadeIn(800);
});
</script>

Огромное спасибо за помощь!

Ответил: Sander


После:
jQuery('.lightbox').fadeIn(800);

Добавить:
jQuery("html").animate({scrollTop:'0px'},400);

Комментарии пользователей (8)

lxmk
24

lxmk - 12 января 2016 14:14 - Юзер

Нет, к сожалению, этот метод не работает. Страница автоматически при открытии окна вверх не прокручивается.

Sander
1125

1637 | 1204

Sander - 12 января 2016 15:22 - Эксперт

Возможно предоставлен не тот код.
При нажатии на кнопку authorization-open страница должна прокручиваться в самый верх.
Чтобы подсказать более по существу - нужно смотреть ваш код в работе на вашем сайте.

SanDev.pro - мой блог.

ICQ: 404-037-556
Skype: Sander8804

lxmk
24

lxmk - 12 января 2016 15:45 - Юзер

Да, верно, это при нажатии на кнопку.
Но этот код
var delay = 30; // Time 30 sec.
$('.lightbox').delay(delay * 1000).fadeIn(800);
});

открывает автоматически (принудительно) окно через 30 секунд (без нажатии на кнопку) после загрузки страницы.
Вот мне и нужно, чтобы при открытии этого окна (в принудительном режиме), страница автоматически поднималась (прокручивалась) вверх. Вот в чем дело.

nowheremany
192

1659 | 1292

nowheremany - 12 января 2016 17:01 - Эксперт

var delay = 30; // Time 30 sec.
$('.lightbox').delay(delay * 1000).fadeIn(800,function(){
$('html, body').animate({scrollTop: 0},500);
});
});


Возможно скролл то покрутиться вверх, но окно останется на исходном месте

Благодарность принимаю тут Связь

lxmk
24

lxmk - 12 января 2016 17:42 - Юзер

Да, в таком варианте все работает, именно то что мне и нужно. Поднятие окна мне не столь важно, конструкция специфическая.
Подскажите, пожалуйста, scrollTop: 0 - это отступ ноль пикселей именно от верха страницы имеется ввиду?

Sander
1125

1637 | 1204

Sander - 12 января 2016 18:41 - Эксперт

По умолчанию px, но в некоторых браузерах могут быть проблемы. Поэтому лучше указывать единицу измерения: "0px" или "0pt" или "0%".
И да, это отступ от верха страницы.

SanDev.pro - мой блог.

ICQ: 404-037-556
Skype: Sander8804

lxmk
24

lxmk - 12 января 2016 19:16 - Юзер

Всё понятно и доступно. Огромное спасибо за помощь и разъяснения, я вам очень признателен. Удачи вам!

lxmk
24

lxmk - 12 января 2016 19:18 - Юзер

Огромное спасибо за помощь, всё замечательно работает, я вам очень признателен. Удачи вам!

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы