首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >显示一个div onload,延伸1秒,然后淡出相同的div并在内容div中淡出

显示一个div onload,延伸1秒,然后淡出相同的div并在内容div中淡出
EN

Stack Overflow用户
提问于 2013-08-21 16:48:37
回答 2查看 2.4K关注 0票数 0

如何在页面加载时显示正在加载的gif,使其多显示1秒,然后在页面加载后,1秒过去了,相同的加载gif将淡出,主要的#内容将淡入?

编辑:感谢所有人的回答,我让它工作了!这是最终的产品:http://invisiblelabs.net/wf/

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2013-08-21 16:54:09

Html:

代码语言:javascript
运行
复制
<body>
    <div id="divload">
        <img src="loading.gif" />
    </div>
    <div id="divcontent" style="visible: none">
       ...
    </div>
</body>

脚本:

代码语言:javascript
运行
复制
$(function() {
    $('#divload').delay(1000).fadeOut();
    $('#divcontent').delay(1000).fadeIn();
});

首先,你的gif是可见的,而内容是不可见的。在页面加载和额外的1秒延迟后,gif将淡出,内容将淡入。

票数 1
EN

Stack Overflow用户

发布于 2013-08-21 16:59:05

最快/最坏的方法是:

代码语言:javascript
运行
复制
$(window).load(function(){
    setTimeout(function(){
        $('#content').fadeIn();
        $('#loading-image').fadeOut();
    },1000);
});

在现代浏览器中,有一种更好的方法,它使用JavaScript进行状态切换,并使用CSS来制作实际的动画。

更好的方式(css,第1部分):

代码语言:javascript
运行
复制
#content{ opacity:0 }
#loading-image{ opacity:1; }    
#content, #loading-image
{
    -webkit-animation:opacity 1s 1s;
    /* Note... example only specifies Webkit.  You should do the same for -moz, -ms, etc*/
}
body.loaded #loading-image { opacity:0;}
body.loaded #content {opacity:1}

更好的方法(js,第2部分):

代码语言:javascript
运行
复制
$(window).load(function(){
    $('body').addClass('loaded');
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18352859

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档