2011-04-14 38 views
2

我用低於js文件:JQuery JCarousel(不是精簡版)和mousewheel。需要幫助

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();} 

我想添加mousewheel到我的jcarousel,但我不能找到適當的功能,當我滾動我的輪時被調用。 請幫幫我。可能需要更多信息。直到現在,我一直在做我自己的事情。 :(

回答

3

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

希望這有助於

3

插入我的代碼片段我! n您的jquery.jcarousel.js 此行之後:

$(窗口).bind( 'load.jcarousel',函數(){windowLoaded = TRUE; });

// Activate the mouse wheel function -------------------------- 
$('.jcarousel').bind('mousewheel', function(event, delta) { 
    if (delta > 0) 
     self.prev(); 
    else if (delta < 0) 
     self.next(); 
});