JQuery JCarousel (не лайт) и колесико мышки.нужна помощь - PullRequest
2 голосов
/ 14 апреля 2011

Я использую эти файлы js ниже:

jquery-1.4.2.min.js
include/jcarousel/lib/jquery.jcarousel.min.js
include/mousewheel/jquery.mousewheel.js

в моем файле index.php, который я получил:

 jQuery(document).ready(function() {
jQuery('#mycarousel').mousewheel(function(event, delta) {
                    if (delta > 0)
                    {carousel.prev();}
                    else if (delta < 0)
                    {carousel.next();}
        });
jQuery('#mycarousel').jcarousel({

    size: mycarousel_itemList.length,
    itemLoadCallback: {onBeforeAnimation: mycarousel_itemLoadCallback},
visible: 3,
btnNext: null,
 btnPrev: null,

});

});

Я считаю, что проблема с

{carousel.prev();}
{carousel.next();}

Я хочу добавить колесико мыши к моей jcarousel, но не могу найти подходящую функцию, которая будет вызываться при прокрутке колеса. Пожалуйста, помогите мне. Дополнительная информация может быть запрошена. Я делаю самостоятельно до сих пор. (

Ответы [ 2 ]

3 голосов
/ 01 января 2012

Вставьте мой фрагмент кода в ваш jquery.jcarousel.js после этой строки:

$ (window) .bind ('load.jcarousel', function () {windowLoaded = true;});

// Activate the mouse wheel function --------------------------
$('.jcarousel').bind('mousewheel', function(event, delta) {
    if (delta > 0)
        self.prev();
    else if (delta < 0)
        self.next();
});
3 голосов
/ 19 декабря 2011

carousel.prev ();и carousel.next ();не будет работать, так как карусель не определена.Вам нужно указать функцию обратного вызова, в которой вы можете вручную запускать функции карусели.

Например:

jQuery('#mycarousel').jcarousel({    
    size: mycarousel_itemList.length,
    itemLoadCallback: {onBeforeAnimation: mycarousel_itemLoadCallback},
    visible: 3,
    btnNext: null,
    btnPrev: null,
    // The callback function to run
    initCallback: mycarousel_initCallback,    
});

function mycarousel_initCallback(carousel) {
    // All code referencing the carousel in here.
    jQuery('#mycarousel').mousewheel(function(event, delta) {
        if (delta > 0)
            {carousel.prev();}
        else if (delta < 0)
            {carousel.next();}
        });

}

Подробнее здесь в этом примере: http://sorgalla.com/projects/jcarousel/examples/static_controls.html

Надеюсь, это поможет!

...