我正在制作一个使用iosSlider插件的网站。我在jquery手风琴中有一些滑块,所以当页面首次加载时,它们中的一些会以“display:none”开头。结果,手风琴内的滑块没有达到合适的屏幕宽度。当你打开其中一个隐藏的手风琴时,里面的滑块很小。
我很好奇是否有更好的方法来解决这个问题,而不是我目前正在使用的问题。现在我只是简单地摧毁了滑块并回想起它,但这看起来很难看,我相信可能有更好的解决方法。
任何输入都会很棒,谢谢
当前代码:
$(".acheader").click(function(e) {
//e.preventDefault();
e.stopPropagation();
acords.slideUp();
$(".menuarrow").attr('src','/themes/images/arrow_down.png');
var image = $(this).find(".menuarrow");
if(image.attr('src') === "/themes/images/arrow_down.png"){
image.attr('src','/themes/images/arrow_up.png');
}
if ($(this).next().is(":hidden")) {
$(this).siblings(".accontent").slideToggle(100);
$('.iosSlider2').iosSlider('destroy');
$('.iosSlider2').iosSlider({
snapToChildren: true,
desktopClickDrag: true,
keyboardControls: true,
navNextSelector: $('.next'),
navPrevSelector: $('.prev'),
onSlideChange: slideChange2
});
}
else image.attr('src','/themes/images/arrow_down.png');
});
编辑:这是针对移动网站的,因此没有我可以参考的静态宽度。滑块父母从父母那里继承他们的宽度等等。
答案 0 :(得分:0)
看看iosSlider文档,在公共方法下,看起来有一个更新命令应该调整它的大小。使用$('.iosSlider2').iosSlider('update');
而不是销毁。这有帮助吗?