Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   scrollTop не работает (https://javascript.ru/forum/jquery/7873-scrolltop-ne-rabotaet.html)

deepslam 23.02.2010 17:46

scrollTop не работает
 
Всем привет!

Подскажите пожалуйста, не срабатывает анимация ( animate ) для элемента html (пробовал и с body) , изменяю параметр scrollTop.

Работает только в firefox и explorer , а в safari и google chrome не работает (

Говоря простым человеским языком мне нужен скрипт, который будет единовременно прокручивать страницу до нужно мне элемента.

Может можно как то еще сделать?

Код у меня получается такой:

$("html").animate({scrollTop: offset.top }, 500);

sysya 23.02.2010 18:58

$("html").animate({scrollTop: $(this).offset().top }, 500);


вот скролл, не помню откуда скопировал, вобщем это не моё:)
jQuery.fn.extend({
    scrollBottom: function(speed) {
        return this.each(function() {
            var targetOffset = $(this).offset().top + $(this).height();
            $('html').animate({scrollTop: targetOffset — $(window).height()}, 
                                   speed);
            });
        }
    });


вот сайт автора http://piranha.org.ua/blog/2008/10/3...-scrollbottom/

и вот ещё http://szenprogs.ru/blog/plavnyj_skr.../2009-09-17-70 Кстати я давал этот адрес уже, если б потрудились форум почитать хоть...

deepslam 23.02.2010 19:19

Благодарю за ссылочку, но мне нужно немного не то.

Задача состоит в том, чтобы страница плавно прокручивалась в низ на несколько сотен пикселей (к примеру)

sysya 23.02.2010 21:11

гуглите в сторону jquery animate scrollTo...

deepslam 24.02.2010 00:05

Спасибо за подсказки! )))
Плагин http://plugins.jquery.com/project/ScrollTo помог ))

Pastorman 02.03.2010 10:54

Дорогой коллега по проблеме. Я рад что мы нашли друг друга!!!
Авторам сие форума - хочется сказать обидное БУ! Но спасибо что благодаря Вам мы тут находим друг друга...

И так.

Дорогой Дипспам - самое смешное что я искал такое же решение проблемы как и у тя. Вот только ирония в том что у меня мой кусок работал только в Мазиле и Сафари...

Ты мне пол кусочка хлеба а я тебе пол пол литру коньяка. И сыты и пьяны.
Добавил твою строчку у мя заработало везде. Надеюсь тебе поможет.
Рад помосчь если шо.

$("#classLinks").click(function() {        
        destination = $(this).offset().top;
        $("body:not(:animated)").animate({ scrollTop: destination }, 1000);
        $("html").animate({ scrollTop: destination }, 500);
        return false;
    });

medium 31.03.2011 15:45

Chrome scrollTop
 
В Chrome,safari scrollTop нужно применять к body. Пример: $('html,body').animate ({scrollTop: Top},500)

kuzroman 28.01.2012 19:09

сенкс

sereb 13.09.2012 02:37

в css нужно убрать свойство height: 100% для html и/или body и код заработает. скорее всего).

space_pancake 15.09.2013 17:39

Цитата:

Сообщение от medium (Сообщение 98705)
В Chrome,safari scrollTop нужно применять к body. Пример: $('html,body').animate ({scrollTop: Top},500)

Большое спасибо. Столкнулся с идентичной проблемой, как у автора и помогло именно Ваше решение! Всё оказалось очень просто)


Часовой пояс GMT +3, время: 19:00.