使Carousel滑块连续滑动

时间:2013-05-07 07:19:45

标签: javascript jquery jcarousel

我有一个自动滚动的jCarousel,如:http://sorgalla.com/projects/jcarousel/examples/static_auto.html

是否可以连续,顺畅地滑动?而不是一次滚动几个项目?

<script type="text/javascript">
function mycarousel_initCallback(carousel) {
    carousel.buttonNext.bind('click', function() { carousel.startAuto(0); });
    carousel.buttonPrev.bind('click', function() { carousel.startAuto(0); });
    carousel.clip.hover(function() { carousel.stopAuto(); }, function() { carousel.startAuto(); }); };
    jQuery(document).ready(function() { 
        jQuery('#mycarousel').jcarousel({ auto: 1, wrap: 'circular', animation: 'fast', scroll: 1, initCallback: mycarousel_initCallback });
});       
</script>

<ul id="mycarousel" class="jcarousel-skin-tango">
<!-- My slides here -->
</ul>

另外,点击导航箭头后,我可以做些什么来保持自动滚动,并且鼠标没有悬停在滑块上吗?

我的文档中没有发现任何相关内容:http://sorgalla.com/projects/jcarousel/

2 个答案:

答案 0 :(得分:1)

删除该行,以便悬停鼠标不会停止动画:

    carousel.clip.hover(function() { carousel.stopAuto(); }, function() {       carousel.startAuto(); }); };

并尝试删除此内容:

    carousel.buttonNext.bind('click', function() { carousel.startAuto(0); });
    carousel.buttonPrev.bind('click', function() { carousel.startAuto(0); });

它可能会帮助你不从(0)元素开始。但首先请检查一下。 所以你看到你可以删除整个函数回调。

答案 1 :(得分:1)

我找到了我想要的东西。所以我的代码看起来像:

<script type="text/javascript">
function mycarousel_initCallback(carousel) {
    carousel.buttonNext.bind('click', function() { carousel.startAuto(); });
    carousel.buttonPrev.bind('click', function() { carousel.startAuto(); });
    carousel.clip.hover(function() { carousel.stopAuto(); }, function() { carousel.startAuto(); }); };
    jQuery(document).ready(function() { 
        jQuery('#mycarousel').jcarousel({ auto: .01, wrap: 'circular', animation: 2000, scroll: 1, easing: 'linear', initCallback: mycarousel_initCallback  });
});       
</script>

看起来这两个设置结合了“动画:2000,缓和:'线性'”,正在做我需要的。