我的flexSlider初始化如下:
$('.flexslider').flexslider({
itemWidth: width
});
是否有可能在初始化后动态更改itemWidth
并强制刷新以便应用新值?
答案 0 :(得分:2)
我最后不得不修改flexslider脚本以使vars
属性可用:
...
slider.vars = vars;
//FlexSlider: Initialize
methods.init();
...
然后可以修改vars.itemWidth
并调用doMath
来刷新滑块:
var slider = $(".flexslider").data("flexslider");
slider.vars.itemWidth = ...;
slider.doMath();
答案 1 :(得分:1)
我认为这是不可能的。一种方法是删除容器内的内容(假设它是.flexslider
)。
$('.flexslider').text("").flexslider({
itemWidth: newWidth
});
此解决方案的问题在于您正在重新初始化整个模块,这可能不是必需的。
另一种解决方案是编辑容器本身的宽度:
$('.flexslider').width("NEWpx")
最后一个解决方案:联系开发团队并要求refresh
方法。
希望这个帮助,欢呼;)