Я давно пользуюсь плагином iScroll 4 , он довольно изящен. Я использую его для создания сенсорных полос прокрутки — отличный плагин. Если у меня будет время, я напишу для него API расширения и напишу несколько демонстраций, если будет достаточно интереса. Но пока вот некоторые фрагменты кода.
//settings for snippets below
var scrollName = 'myScroll',
scrollDuration = 1000,
scrollAmount = 200;
Настройка прокрутки с обратным прокруткой обратного вызова.
//setup scroll with end scroll callback
window[scrollName] = new iScroll(scrollName, {
onScrollEnd: function() {
console.log('onScrollEnd');
//do something on end of scrolling
}
});
Проверьте прокрутку вверху содержимого.
// Проверка прокрутки вверху содержимого
window.scrollName.y <0 [/ js] Проверьте прокрутку внизу содержимого. [js] // Проверка прокрутки внизу содержимого window.scrollName.y == window.maxScrollY [/ js] Прокрутка до верхней части содержимого. [js] // прокрутка к верху содержимого window.scrollName.scrollTo (scrollDuration); // или window.scrollName.scrollTo (0,0) [/ js] Относительная прокрутка вверх. [js] // относительная прокрутка вверх window.scrollName.scrollTo (0, '-' + scrollAmount, scrollDuration, true); [/ js] Относительная прокрутка вниз. [js] // относительная прокрутка вниз window.scrollName.scrollTo (0, scrollAmount, scrollDuration, true); [/ js] // инициализировать прокрутку в модальном окне начальной загрузки, если оно не существует [js] if (! window [scrollName] .wrapper) {// он должен быть видимым, чтобы он работал ... setTimeout (function () {console.log ('modal iscroll ...'); console.log (scrollName); window [scrollName] = new iScroll (scrollName);}, 10); } [/ js]