使用JQuery在IE中完全加载DOM时显示div

时间:2012-01-16 11:09:18

标签: jquery internet-explorer onload

我需要在DOM完全加载时显示包含幻灯片的DIV。

我用过这个脚本:

    <script type="text/javascript">
    $(window).load(function() {
        new Image("images/layout/wallpaper.jpg");
        new Image("images/layout/plates.png");

        $('#slideshow').css('display', 'block');
        $('#slideshow').nivoSlider({
            effect: 'fade',
            animSpeed: 500,
            pauseTime: 3000,
            directionNav: false,
            directionNavHide: false,
            controlNav: false,
            keyboardNav: false,
            pauseOnHover: false
        });
    });
    </script>

#slideshow DIV定义为display:hidden。在Internet Explorer中,DIV从不显示。 我该如何解决这个问题?

====================================

编辑:

    $(document).ready(function () {
        $(window).load(function() {
            new Image("images/layout/wallpaper.jpg");
            new Image("images/layout/plates.png");

            $('#slideshow').nivoSlider({
                effect: 'fade',
                animSpeed: 500,
                pauseTime: 3000,
                directionNav: false,
                directionNavHide: false,
                controlNav: false,
                keyboardNav: false,
                pauseOnHover: false
            });
            $('#slideshow').css('display', 'block');
        });
    });

仍然没有区别。 这是#slideshow DIV的CSS:

#slideshow {
    z-index: 0;

   height: 457px;
   width: 660px;
   position: relative;
}

“display:none;”属性定义为内联。

2 个答案:

答案 0 :(得分:1)

尝试等待dom准备就绪,例如:

$(document).ready( function () {
... your code inside the window load function ...
});

答案 1 :(得分:1)

这可能很简单:

$('#slideshow').show()

此外,您使用document.load事件的原因是什么:

$(document).ready(function (){