Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.10.2016, 11:23
Аспирант
Отправить личное сообщение для olegalimov Посмотреть профиль Найти все сообщения от olegalimov
 
Регистрация: 27.09.2015
Сообщений: 94

Как проскроллить вниз ровно на высоту экрана?
Доброе время суток.
Нашел скрипт на jQerey, но он срабатывает один раз почему-то?
Вот сам скрипт.
$(document).ready ( function ( ) {
			$('#nav_down').fadeIn('slow');  
			var win = $(window).height () ;
			$( '#nav_down' ).click ( function ( ) {
			$( 'body,html' ).animate ( {
			scrollTop: win
			} , 800 ) ;
			return false ;
			} ) ;
			} ) ;

<div  class="nav_down" id="nav_down"></div>

При нажатии кнопки только один раз уходит вниз, при втором нажатие ни чего не происходит. я понимаю что надо писать вот так: scrollTop: '+=win' но, так не работает.
Помогите разобраться со скриптом.
Ответить с цитированием
  #2 (permalink)  
Старый 26.10.2016, 11:35
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от olegalimov
Как проскроллить вниз ровно на высоту экрана?
http://ukrdev.com.ua/ru/question/358...u-iekrana.html
Ответить с цитированием
  #3 (permalink)  
Старый 26.10.2016, 11:54
Аспирант
Отправить личное сообщение для olegalimov Посмотреть профиль Найти все сообщения от olegalimov
 
Регистрация: 27.09.2015
Сообщений: 94

Сообщение от ksa Посмотреть сообщение
http://ukrdev.com.ua/ru/question/358...u-iekrana.html
у меня эта ссылка не открывается! не знаю почему
Ответить с цитированием
  #4 (permalink)  
Старый 26.10.2016, 13:21
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от olegalimov
у меня эта ссылка не открывается!
У меня открывается...

Ну вот тебе еще одна...
Ответить с цитированием
  #5 (permalink)  
Старый 26.10.2016, 13:37
Аспирант
Отправить личное сообщение для olegalimov Посмотреть профиль Найти все сообщения от olegalimov
 
Регистрация: 27.09.2015
Сообщений: 94

я открыл вашу ссылку там написано.
"Переменную win объявляйте после клика"
Хорошо написал так
$(document).ready ( function ( ) {
			$('#nav_up').fadeIn('slow');
			$('#nav_down').fadeIn('slow');  
			$( '#nav_down' ).click ( function ( ) {
			var win = $(window).height();
			$( 'body,html' ).animate ( {scrollTop: '+=win'} , 800 ) ;
			return false ;
			} ) ;
			} ) ;

Все равно не работает при втором нажатии
Ответить с цитированием
  #6 (permalink)  
Старый 26.10.2016, 13:56
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от olegalimov
не работает при втором нажатии
Так на N-ном разе нужно "скролить" на N-раз умноженное на win.
Ответить с цитированием
  #7 (permalink)  
Старый 26.10.2016, 14:14
Аспирант
Отправить личное сообщение для olegalimov Посмотреть профиль Найти все сообщения от olegalimov
 
Регистрация: 27.09.2015
Сообщений: 94

Сообщение от ksa Посмотреть сообщение
Так на N-ном разе нужно "скролить" на N-раз умноженное на win.
Я понимаю что вам смешно, я не волшебник, а только учусь.
я в курсе что написал ошибку.
но как сделать?
Ответить с цитированием
  #8 (permalink)  
Старый 26.10.2016, 14:43
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от olegalimov
но как сделать?
Хранить где-то "счетчик"... Увеличивать его при каждом скроле...
Нужно учитывать так же, что сам пользователь может скрольнуть вниз или вверх, т.ч. и текущее положение придется анализировать на предмет "на какой странице я нахожусь" и "на какую мне скролить"...
Ответить с цитированием
  #9 (permalink)  
Старый 26.10.2016, 14:52
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

<div  class="nav_down" id="nav_down" style='position:fixed; left:100px;background-color:silver'>скролл вниз</div>
<div id = "container"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<script>
$(document).ready ( function ( ) {
    $('#nav_down').fadeIn('slow');  
    var win = $(window).height (),
         count = 1,
         content = "";
    for (var i=1;i<300;i++) content += i.toString() + "<br>";
    $('#container').html(content);
    $( '#nav_down' ).click ( function ( ) {
        $( 'body,html' ).animate ( {
           scrollTop: win * count
         } , 800 ) ;
         count++;
         return false ;
    } ) ;
} ) ;
</script>

Последний раз редактировалось Dilettante_Pro, 26.10.2016 в 14:55.
Ответить с цитированием
  #10 (permalink)  
Старый 26.10.2016, 15:06
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Dilettante_Pro, если самому скрольнуть колесом вниз, а потом нажать на "скролл вниз" - получается скролл вверх.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать чтобы textarea тянулась в высоту при добавлении в нее текста? javasc Общие вопросы Javascript 4 27.03.2012 22:14
как зделать что бы пропадали картинки в зависимости от разрешения экрана skelan Javascript под браузер 9 09.06.2011 21:42
как попасть вниз страницы pernik jQuery 2 04.06.2011 19:52
Можно легко узнать разрешение экрана. А как именно JS это узнает? jungle Общие вопросы Javascript 12 29.11.2010 01:43
Как получить высоту DIV, установленную автоматически YOricH Internet Explorer 4 22.07.2009 17:15