暂停鼠标悬停不在JCarousel上工作

时间:2013-04-25 04:15:02

标签: jquery hover jcarousel

我已经找到了很多答案,但没有一个答案回答了我的问题。我有这个JCarousel,autoscroll。我希望它在悬停时停止,我需要在代码中添加什么?

<script type="text/javascript">

jQuery(document).ready(function() {
    jQuery('#mycarousel').jcarousel({
        auto: 1,
        wrap: 'circular',
        vertical: true,
        animation: 3500,
        pauseOnHover: true,
        scroll:1,
    });
});
</script>

先谢谢你们!

3 个答案:

答案 0 :(得分:1)

以下是有关如何在JCarousel上使用鼠标悬停暂停的资源的步骤

步骤:1在我们的安全(file.js)的根目录中创建此函数。

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

步骤2:将此功能置于就绪功能

jQuery(document).ready(function() {

//exemple
 jQuery('#carosule ul').jcarousel({
     scroll:1,
     visible:4,
     wrap:"circular",
     animation:300,
     auto:1,
     hoverPause: true,
     width: 160,
     initCallback: mycarousel_initCallback

    });

});

答案 1 :(得分:0)

在初始化中添加此代码:initCallback(carousel)

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

在jCarousel的bug中甚至提到过这一点。

function mycarousel_initCallback(carousel)
{

    // Pause autoscrolling if the user moves with the cursor over the clip.
    carousel.clip.hover(function() {
        carousel.stopAuto();
    }, function() {
        carousel.startAuto();
    });
};

答案 2 :(得分:0)

更新答案以保持最新状态。

请参阅https://github.com/jsor/jcarousel/issues/568以获取正确答案:

$('.jcarousel').hover(function() {
    $(this).jcarouselAutoscroll('stop');
}, function() {
    $(this).jcarouselAutoscroll('start');
});