Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Как проскроллить вниз ровно на высоту экрана? (https://javascript.ru/forum/jquery/65570-kak-proskrollit-vniz-rovno-na-vysotu-ehkrana.html)

Dilettante_Pro 26.10.2016 17:52

ksa,
Это же не полноценная программа, а только демонстрация принципа...
Кнопки "скролл вверх" тоже нет... и еще много чего

olegalimov 27.10.2016 07:47

Большое спасибо! Надеюсь дальше сам попытаюсь до работать. Если не смогу то, напишу.

ksa 27.10.2016 08:12

Цитата:

Сообщение от Dilettante_Pro
Это же не полноценная программа, а только демонстрация принципа...

Разумеется. :yes:

olegalimov 27.10.2016 09:51

Это я уже понял!

olegalimov 27.10.2016 11:39

Цитата:

Сообщение от ksa (Сообщение 433066)
Разумеется. :yes:

А если так реализовать
$(document).ready ( function ( ) {
			$('#nav_up').fadeIn('slow');
			$('#nav_down').fadeIn('slow');  
			$( '#nav_down' ).click ( function ( ) {
			var win = $(window).scrollTop() + $(window).innerHeight();
			$( 'body,html' ).animate ({scrollTop: win } , 800 ) ;
			} ) ;
				$('#nav_up').click(	function () {
					var win = $(window).scrollTop() - $(window).innerHeight();
						$('html, body').animate({scrollTop: win }, 800);
				});			
} ) ;


По вашему мнению какие минусы скрипта?

ksa 27.10.2016 13:57

Цитата:

Сообщение от olegalimov
А если так реализовать

Все равно фигня получается... :(

<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
</script>
</head>
<body>
<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>
</body>
</html>

У меня на странице (во весь экран) 56 внизу... Проскролил руками до 100 внизу... Нажал на кнопку - внизу 112 и соточка моя ниже середины.

А пойдет или нет - это пусть "конечный" исполнитель решает. Х/з чего в итоге нужно. :)

olegalimov 27.10.2016 14:58

вроде нормально срабатывает

Dilettante_Pro 27.10.2016 17:33

Цитата:

Сообщение от olegalimov (Сообщение 433096)
вроде нормально срабатывает

И даже изменение размеров окна нормально обрабатывает:victory:


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