2015-04-12 4 views
0

Я работаю на моем блоге Tumblr и имеют следующий CSS набор:OnClick прокручивать вниз известково (100% - 60px)

img 
{ 
    max-height: calc(100% - 60px); 
    margin-top:30px; 
} 

около того полей (верхние и нижние) являются 30px.

Я пытаюсь добавить две кнопки предыдущей и ряд, который, при нажатии прокрутки страницы вверх или вниз (100% - 60px).

Это является JS У меня есть:

$(function() { 
    $("#next").on("click", function() { 
     $("body").animate({"scrollTop": window.scrollY+100}, 100); 
     return false; 
    }); 
}); 

$(function() { 
    $("#previous").on("click", function() { 
     $("body").animate({"scrollTop": window.scrollY-100}, 100); 
     return false; 
    }); 
}); 

И вот моя скрипка: https://jsfiddle.net/cztqjwb2/1/

Любая помощь будет значительно apreciated.

Спасибо.

PS: Также я не знаю, почему это работает только на Сафари.

+2

Пожалуйста, разместите код и любую соответствующую информацию в своем вопросе, не передавайте его на аутсорсинг. Если ссылка умирает, ваш вопрос умирает вместе с ней. –

ответ

1
$("body").animate({"scrollTop": window.scrollY + 100}, 100); 

Это прокручивает в текущей позиции + 100px. Предполагая, что 100% - 60px вы имеете в виду высота окна - 60px (в отличие от высота документа), замените это 100 на (window.innerHeight - 60).

$("body").animate({"scrollTop": window.scrollY + window.innerHeight}, 100); 

Я обновил your fiddle соответственно.

+0

У вас есть идеи, почему он работает только в Safari? @Siguza – Federico

+1

Он фактически работает с Safari, Chrome и Opera, просто не в Firefox (IE я не тестировал, и мне все равно). См. [Этот вопрос и ответ] (http://stackoverflow.com/questions/8149155/animate-scrolltop-not-working-in-firefox), почему это и как обойти его. Обновлен [скрипка] (https://jsfiddle.net/cztqjwb2/4/) снова. – Siguza