Я пытаюсь интегрировать плагин jquery-mousewheel (https://github.com/jquery/jquery-mousewheel) с плагином - плагин jquery cycle2.
Все было хорошо, пока я не обнаружил, что прокрутка мышью вызывает множество событий прокрутки, особенно с новыми «волшебными» трекпадами и мышами, которые создают большую инерцию в колесе.
На GitHub я нашел плагин (https://github.com/amondit/jquery.scrollsteps.js), созданный специально для этого плагина для решения этой проблемы.
Я использовал файл jquery.scrollsteps-full-min.js.
Вот как я называю плагин:
$(function() {
var $slider = $('.slider_overlay');
// slider initialize
$slider.cycle({
fx: 'scrollVert',
timeout: 0,
pager: '.slider_list',
pagerTemplate: '',
pagerActiveClass: 'active_slide',
slides: '> div',
centerHorz: true,
centerVert: true,
speed: 1000
});
// initialize scrollsteps plugin
$slider.scrollsteps({
up: $slider.cycle('prev'),
down: $slider.cycle('next')
});
});
И когда я начинаю прокручивать страницу вверх и вниз, я получаю следующее сообщение об ошибке из консоли firebug:
"TypeError: i.down не является функцией" или "TypeError: i.up не является функцией"
Возможно, у кого-то есть идеи или мысли, почему может возникать эта ошибка?
Если я использую инициализацию колесика мыши по умолчанию (без плагина scrollsteps) - все работает нормально:
$slider.mousewheel(function(e) {
if (e.deltaY > 0) {
$slider.cycle('prev');
} else {
$slider.cycle('next');
}
});
но, как я уже упоминал, это вызывает множество событий прокрутки.
Может я неправильно решаю эту задачу? Если кто-то знает другие решения - буду очень признателен за помощь.