3

我使用 jquery Ui 在两个不同的选项卡中制作了两个 jcarousel 滑块...

当我更改选项卡部分时,滑块必须重置(或)重新加载并移动到其第一个图像。

我用过这个脚本

jQuery(document).ready(function() {
  jQuery('#mycarousel').jcarousel();
  jQuery('#mycarousel2').jcarousel();
  $( "#tabs" ).tabs();
});

我试过这个脚本我对代码没有任何影响

<script type="text/javascript"> 
    var theModelCarousel = null; 

    function modelCarousel_initCallback(carousel) { 
        theModelCarousel = carousel; 

    }; 

    jQuery('#tabs-2').click(function() { 


         jQuery('#mycarousel').jcarousel({ 
            initCallback: modelCarousel_initCallback 

        });

    }); 

    function clearModelCarousel() { 
        theModelCarousel.reset(); 

    } 
</script> 

如果我更改为另一个选项卡(不刷新页面),如何重置滑块。

在这里我做了一个BIN以便于理解。

4

5 回答 5

3

您可以尝试使用 jcarousel 中的重新加载选项

.jcarousel('reload' [, options])

jCarousel API

$('.jcarousel').jcarousel('reload', {
    'animation': 'slow'
});
于 2013-01-24T04:47:29.983 回答
2

参考 API

这真的是一个简单的问题

http://sorgalla.com/jcarousel/docs/reference/api.html

 .jcarousel('reload' [, options])
于 2013-04-06T11:30:00.237 回答
1

我有同样的问题,.jcarousel('reload' [, options])或者 $('#mycarousel').jcarousel('scroll', 0);有一个奇怪的副作用。

('scroll', 0)只是在 jcarousel 重新排序您的元素时随机工作。

('reload' [, options])第一眼就开始工作,但是当您单击下一张图片按钮时,它会滑动到您看到的最后一张图片旁边的图片。如果您最后使用上一个图片按钮,则无法正常工作。

对我有用的是每次打开 jcarousel 脚本时将其绑定到图像库,然后在每次关闭时销毁 jcarousel:

删除 jcarousel 使用:

$('.gallery').jcarousel('destroy');

于 2013-09-27T19:39:51.443 回答
1
jQuery('#mycarousel').data('jcarousel').scroll(0);

这会将您的轮播重置为起始位置;

或者如果在一个函数中你有 carousel 对象

carousel.scroll(0);
于 2013-06-26T21:31:31.280 回答
0
  $('#tabs').on('click', '.ui-tabs-anchor', function() {
    $('#mycarousel').jcarousel('scroll', 0);
    $('#mycarousel2').jcarousel('scroll', 0);
  });

也许可以使用滚动方法来定位轮播中的第一项。 http://jsbin.com/idabit/23/edit

于 2013-01-25T02:27:52.097 回答