- Usando el plugin jquery.event.drag (http://threedubmedia.com/code/event/drag/)
- En jquery.flexslider.js, copio el bloque que da soporte a mousewheel y lo uso como base para el soporte para drag:
... // MOUSEWHEEL: if (vars.mousewheel) { slider.bind('mousewheel', function(event, delta, deltaX, deltaY) { event.preventDefault(); var target = (delta < 0) ? slider.getTarget('next') : slider.getTarget('prev'); slider.flexAnimate(target, vars.pauseOnAction); }); } // DRAG: if (vars.drag) { slider.bind('drag', function(event, delta) { event.preventDefault(); var target = (delta.deltaX < 0) ? slider.getTarget('next') : slider.getTarget('prev'); slider.flexAnimate(target, vars.pauseOnAction); }); } ...
- También agrego 'drag' en los defaults de flexslider:
... $.flexslider.defaults = { ... mousewheel: false, drag: false, ...
- Entonces, en el script, se puede usar 'drag: true' cuando se requiera:
$('.flexslider').flexslider({ animation: 'slide', slideshow: false, drag: true });
Referencia: Request: add mouse dragging for desktop users