2016-03-07 64 views
0

我正在使用Sorgalla's jCarousel如何在自動滾動模式下在jCarousel中的幀之間跳轉

我想傳送帶不中斷穩步推進,所以我初始化的jCarousel,如:

$('.jcarousel').jcarousel({ 
    wrap: 'circular', 
    animation: { 
     duration: 5000, 
     easing: 'linear', 
    } 
}) 
.jcarouselAutoscroll({ 
    target: '+=1', 
    interval: '0', 
    autostart: true, 
}); 

我也有一個分頁實現:

$('.jcarousel-pagination') 
     .on('jcarouselpagination:active', 'a', function() { 
      $(this).addClass('active'); 
     }) 
     .on('jcarouselpagination:inactive', 'a', function() { 
      $(this).removeClass('active'); 
     }) 
     .jcarouselPagination(); 

,到目前爲止作品,旋轉木馬是每時每刻都在慢慢移動。但是現在分頁按鈕不再起作用了,因爲轉盤不斷處於轉換過程中。

當點擊其中一個分頁項目時,爲了直接跳轉到所需的框架(有/無過渡),我必須做些什麼?

的jsfiddle看到here

回答

1

的問題是:

當轉盤做一個過渡,您不能使用分頁。例如: 這裏http://jsfiddle.net/2Kspn/18/ 嘗試點擊分頁時,有一個過渡。分頁不起作用。

或在您的JsFiddle中,將自動啓動設置爲False,並嘗試點擊轉換。 它不起作用。

所以,我看到薩姆的解決方案:

  1. 你可以把內部(在1000爲例)爲了讓這個間隔之間分頁工作。看到這裏http://jsfiddle.net/2Kspn/15/

  2. 試圖阻止當前的過渡,並強制分頁。 但在API,http://sorgalla.com/jcarousel/docs/reference/api.html#api中,我們沒有找到這樣的功能。所以我們可以添加功能。事件$('a')。點擊()。 我可以像這樣停止轉換:

    $('。jcarousel ul')。stop();

但是我們必須做重新激活的過渡。

,所以我這樣做:

$('.jcarousel ul').stop(true, true); 

在這裏看到http://jsfiddle.net/sg9u5fLy/5/

但它不是一個真正我們想要的。

但也許是好方法?

希望可以幫助

+0

+1對於停止動畫的想法,我無法使分頁正常工作。 $('。jcarousel-control-next')。click(function(){$('。jcarousel ul')。stop(true,true);});對於「下一個」和「前一個」控件至少可以讓用戶導航,但是這是一個醜陋的解決方法,而且沒有平滑的過渡。 – Flaudre