我正在使用responsive jcarousel plugin,我有一个问题。当我加载网页时,一切都运行得很好,响应良好,但如果我调整浏览器窗口的大小,转盘就会变得一团糟。
我想我应该启动jcarousel reload method,让它重新计算幻灯片的数量和大小。问题是我不能让carousel重新加载。请看下面的代码:
这就是我的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', {});
});我在carousel reload,create函数中放置了一个console.log。它会在我按F5时记录,但在我调整浏览器窗口大小时不会。为什么我的reload事件没有触发?
谢谢!
发布于 2015-10-15 01:36:58
我找到错误的地方了!jcarousel.on('jcarousel:reload, jcarousel:create', function () {错了,正确的语法是这样的:jcarousel.on('jcarousel:reload jcarousel:create', function () {,用空格代替逗号。
https://stackoverflow.com/questions/33126671
复制相似问题