2012-09-17 59 views
0

我想bxSlider重新启动,因此它可以重新计算div尺寸,并调整窗口大小时的新宽度和高度。重新调整jQuery插件调整大小

我在想,如何在jQuery中重新调整插件大小。

我想简单功能

//Home slider function 
function hSlider(){ 
    $('.hCarousel').bxSlider({ 
     displaySlideQty: 3 
    }); 
} 

$(window).resize(function(e){ 
    hSlider(); 
}).resize(); 

要在resize()

重载这可能吗?

+0

您是否尝试过把它里面'调整()'?你的代码在哪里尝试? – Sparky

+0

更新了我的代码,我使用插件创建了一个函数,并在resize()中调用它,但事实是它附加了一个新插件,而不是重新加载它。 – Warface

+0

这取决于插件,插件应该能够响应,给你想要的结果。 – undefined

回答

4

综观上http://bxslider.com/options API,您应该能够调用其中的这些功能。

destroyShow()销毁活动的幻灯片
reloadShow()重新初始化 幻灯片放映

//Home slider function 
$('.hCarousel').bxSlider({ 
    displaySlideQty: 3 
}); 


$(window).resize(function(e){ 
    $('.hCarousel').reloadShow(); 
}); 

注未经测试,但阅读API

-1

我这样做,但使用underscore.js。

$(window).resize(_.bind(this.resizeList, this)); 

,我认为你的错误是在这里:

$(window).resize(function(e){; <----- REMOVE THIS ; 
    hSlider(); 
}).resize();      <----- And I think this is not necessary too 

像这样的东西应该这样做:

$(window).resize(function(e){ 
    hSlider(); 
}); 
+0

这是一个错别字,遗憾的是没有在我原来的代码中。 – Warface

+0

麻烦解释为什么-1? –

+0

这不是我的错。不是我 – Warface

0

你应该能够调用从直JS resize事件功能:

window.onresize = function(event) {  ... } 
+0

有什么区别?问题是插件没有调整大小。 – undefined

0

假设你的代码的其余部分是正确的,我在创建滑块之前添加了destroyShow() ...

function hSlider(){ 
    $('.hCarousel').destroyShow().bxSlider({ 
     displaySlideQty: 3 
    }); 
} 

$(window).resize(function(e){ 
    hSlider(); 
}).resize(); 

bxSlider Documentation

相关问题