Если вы ищете упругий эффект ...
Такого эффекта требует поддержки так называемых overscroll на элементах DOM - по существу это означает, что вы должны быть в состоянии установить document.body.scrollTop
до отрицательного значения. Но вы не можете сделать это в стандарте DOM:
$(function() {
document.body.scrollTop = -20;
$("#sp").html("Scroll position=" + document.body.scrollTop);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id=sp>
Scroll position
</div>
Вам нужно будет анимировать document.body.scrollTop < 0
для достижения анимированного упругого эффекта.
Помимо отрицательных значений прокрутки требуется специальный тип полосы прокрутки. Классические полосы прокрутки по умолчанию не предназначены для отображения позиций скроллинга.
В идеале, для достижения такого эффекта вам понадобится поддержка браузера.
Как и в моем Sciter Я ввел overlow:scroll-indicator;
свойство CSS для поддержки такой легкой полосы прокрутки с анимированным эффектом «вернуться». Вот скриншот взят в момент overscroll (обратите внимание на первый пункт с верхней частью списка):
В принципе в браузерах можно добиться такого эффекта с использованием анимированных transform:translate()
и пользовательской прокрутку Как бы ни рисовать, но я не видел ничего подобного ...
https://www.google.com/search?q=javascript%20overscroll%20effect – SLaks
Каждая мобильная платформа использует свою собственную индикацию "end-reached" , Вы ищете какой-то определенный эффект? –
@ Соло «очень дорого» чрезвычайно субъективно. –