Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Проблема с scrollBy (https://javascript.ru/forum/misc/49368-problema-s-scrollby.html)

maxx)) 10.08.2014 15:23

Проблема с scrollBy
 
Всем привет, многие знают что такое scrollby.
Проблема вот в чем, у меня есть див, и мне нужно прокручивать его содержимое нажимая на кнопку (вверх \ вниз) на заданную высоту.
Т.е нажал кнопку, спустился на 50px, нажал еще - еще 50px вниз, нажал вверх - поднялся на 50px. Пытался через scrollby сделать - не работает. Как я понял он к div'ам не применятся

Sweet 10.08.2014 15:37

Меняй в css свойство top.

maxx)) 10.08.2014 15:46

как?

рони 10.08.2014 16:04

maxx)),
http://learn.javascript.ru/metrics#scrolltop-scrollleft
Цитата:

scrollLeft/scrollTop можно изменять

В отличие от большинства свойств, которые доступны только для чтения, значения scrollLeft/scrollTop можно изменить, и браузер выполнит прокрутку элемента.

При клике на следующий элемент будет выполняться код elem.scrollTop += 10. Поэтому он будет прокручиваться на 10px вниз:

maxx)) 10.08.2014 16:10

Делаю вот так <a href="javascript://" onclick="$('#content').scrollTop+=10">top</a> не работает

maxx)) 10.08.2014 16:33

Вот так работает, но только один раз. Нужно чтобы работало пока не дошло до конца
<a href="javascript://" onclick="$('#content').animate({scrollTop: ($(window).scrollTop() + 10) + 'px'}, 300);">top</a>

maxx)) 10.08.2014 16:38

Вроде решено, может кому пригодится

<a href="javascript://" class="scroll-down">top</a>

<script>
$('.scroll-down').click(function() { 
    $('#content').animate({ 
       scrollTop: $('#content').scrollTop() + 10
    });
});
</script>


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