如何重新加载JCarousel

时间:2015-10-14 13:27:32

标签: javascript jquery jquery-plugins jcarousel

我正在使用responsive jcarousel plugin,我遇到了问题。当我加载网页时,一切都运行良好响应和漂亮,但如果我调整浏览器窗口的大小,旋转木马会混乱。

我发现我应该开火jcarousel reload method以重新计算幻灯片的数量及其大小。问题是我不能让旋转木马重装。请看下面的代码:

这就是让我的jcarousel响应的原因(这很好):

 var jcarousel = $('.jcarousel');

    jcarousel.on('jcarousel:reload, jcarousel:create', function () {
        console.log('reloading carousel');
            var carousel = $(this),
            width = carousel.innerWidth();
            cantSlides = 1;
            if (width >= 1600){
                width = width / 4;
                cantSlides = 4;
            }else if (width >= 1200) {
                width = width / 3;
                cantSlides = 3;
            }else if (width >= 800) {
                width = width / 2;
                cantSlides = 2;
            }
            carousel.jcarousel('items').css('width', Math.ceil(width) + 'px');

            $('.jcarousel-control-prev')
            .jcarouselControl({
                target: '-='+cantSlides
            });

            $('.jcarousel-control-next')
            .jcarouselControl({
                target: '+='+cantSlides
            });

        })

这是不起作用的:

$(window).resize(function(){
  $('.jcarousel').jcarousel('reload', {});
});

我在轮播重新加载中放置了console.log,创建了函数。当我按F5时它会记录,但是当我调整浏览器窗口大小时它不会记录。为什么我的重装事件没有解雇?

谢谢!

1 个答案:

答案 0 :(得分:1)

我发现错误在哪里! jcarousel.on('jcarousel:reload, jcarousel:create', function () {错误,正确的语法是:jcarousel.on('jcarousel:reload jcarousel:create', function () {,空格而不是逗号。