如何在自动滚动模式下立即在jCarousel中的帧之间跳转

时间:2016-03-07 12:22:31

标签: jquery pagination jcarousel

我正在使用Sorgalla's 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 个答案:

答案 0 :(得分: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中,我们找不到这样的函数。所以我们可以添加功能。 on event $('a')。click()。 我可以像这样停止过渡:

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

  3. 但我们必须重新过渡。

    所以我这样做:

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

    http://jsfiddle.net/sg9u5fLy/5/

    但它并不是我们想要的。

    但也许是好方法?

    希望有所帮助