Доброго времени суток. Данный вопрос уже поднимался на тостере и есть ответ и решение задачи, но также есть и один недостаток (большой для меня), который очень прошу помочь мне решить.
Lakewake -
вот здесь предложил очень хороший (на мой взгляд) алгоритм решения данного вопроса (по крайней мере лучшего решения задачи для моих нужд пока не нашел) - Скролл работает идеально, недостаток заключается в том, что скролл останавливается на последнем якоре и застывает на месте, страница еще не закончилась и имеется некий контент, но так как якорей больше нет, то отсутствует возможность продолжить скролинг вверх (вниз работает).
При грамотном распределении якорей как правило это остается небольшое кусок ~100px, но значение не постоянное.
Если вообще не ставить якоря, а контента после последнего якоря еще море - то его не возможно увидеть.
Пример:
https://jsfiddle.net/wqL8btcw/
Также можно поставить якорь на самый последний div Но! В таком случае контент, который будет находиться между пред-последним и последним div будет проскроллен и не замечен.
Суть вопроса в том чтобы усовершенствовать данных скрипт, а именно сделать так чтобы:
- 1. Во время скроллинга вверх и вниз - скролл осуществляется по якорям (Anh1, Anh2, Anh3, Anh4, .....n)
- 2. После последнего якоря - вернулась возможность обычного (стандартного, простого, браузерного) скролла. (Anh1, Anh2, Anh3, Anh4, .....n, конец страницы)
- 3. Долистав до конца страницы (стандартным скроллом) производя скролл уже вниз происходило все в обратном порядке. (конец страницы, n..... Anh4, Anh3, Anh2, Anh1)
В примере (вверху) видно что склолл застывает на 3 обзаце, так как 3 div это последний якорь.
Сам честно не разбираюсь в JS и jQuery прошу вашей помощи....