javascript - Firefox 无法正确处理 jQuery $(window).load

标签 javascript jquery html css firefox

有一个带背景的 div#all,我希望它在 onLoad 中淡入淡出。 Chrome 和 IE 支持 window.load,而 Firefox 不支持。 Firefox 等待 fadeIns 中的时间量 (1500+500) 然后显示内容,没有任何效果

CSS

body {
    display: none;
}

#all{
     background: url('../bg.jpg') no-repeat center center fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

HTML

<body>

<div id="all">
All contents here  

 <div id="home" style="display:none">Content</div>

</div>

</body>

jQuery

$(window).load(function() {
    $("body").fadeIn(1500,function(){
        $('#home').fadeIn(500);
   });
});

最佳答案

似乎文本正确地淡入淡出,只是背景图像突然弹出,因为它没有缓存并且 firefox 在加载之前启动。

从“How can I check if a background image is loaded?”中得到启发

$(window).load(function() {
    $('<img/>').attr('src', '../bg.jpg').load(function() {
        $(this).remove();

        $("body").fadeIn(1500,function(){
            $('#home').fadeIn(500);
        });
    });
});

这样它会在开始淡入之前先等待背景图像加载。

(注意,如果没有图像加载检查,它在 Chrome 上对我来说也不能很好地工作。)

关于javascript - Firefox 无法正确处理 jQuery $(window).load,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20764047/

相关文章:

javascript - 第一次请求时未发送 Cookie

javascript - 在 JS 中格式化 Date()

javascript - ckeditor按钮不显示

javascript - 使用 d3.js 在组中选定对象周围绘制动态多边形

jquery - 制作 :focus styling remain there after the user clicks the link

html - CSS 断点不起作用

javascript - 将对象键转换为数组列表?

javascript - f.checkbox - 如何添加立即提交的onclick?

html - 定义背景图像的最小宽度

html - Flexbox 底部对齐