隐藏时将窗口宽度传递给iosSlider

时间:2012-11-09 19:50:52

标签: javascript jquery html

我正在制作一个使用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');
        });

编辑:这是针对移动网站的,因此没有我可以参考的静态宽度。滑块父母从父母那里继承他们的宽度等等。

1 个答案:

答案 0 :(得分:0)

看看iosSlider文档,在公共方法下,看起来有一个更新命令应该调整它的大小。使用$('.iosSlider2').iosSlider('update');而不是销毁。这有帮助吗?