2015-03-06 3 views
1

Я пытаюсь интегрировать плагин jquery-mousewheel (https://github.com/jquery/jquery-mousewheel) с плагином - jQuery cycle2 плагин.Пытается вставить плагин 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: я .down не является функцией «или» TypeError: i.up не функция "

возможно, кто-то имеет какие-либо идеи или мысли, почему может возникнуть эта ошибка?

Если я использую по умолчанию колеса прокрутки инициализации (без scrollsteps плагина) - все работало отлично:

$slider.mousewheel(function(e) { 
    if (e.deltaY > 0) { 
     $slider.cycle('prev'); 
    } else { 
     $slider.cycle('next'); 
    } 
}); 

, но как я уже говорил, что вызывает много прокрутку событий.

Возможно, я решил эту проблему неправильно? Если кто-то знает другие решения - будет очень благодарен за помощь.

ответ

1

Аnswer)

$(function() { 

    var $slider = $('.slider_overlay'); 

    $slider.cycle({ 
     fx: 'scrollVert', 
     timeout: 0, 
     pager: '.slider_list' 
     pagerTemplate: '', 
     pagerActiveClass: 'active_slide', 
     slides: '> div', 
     centerHorz: true, 
     centerVert: true, 
     speed: 1000 
    }); 

    function prev() { 
     $slider.cycle('prev') 
    } 

    function next() { 
     $slider.cycle('next') 
    } 

    $slider.scrollsteps({ 
     up: prev, 
     down: next 
    }); 

}); 
Смежные вопросы