页面加载时显示加载程序

时间:2013-08-22 11:53:29

标签: javascript preloader pageload

如何在页面加载时显示加载程序并在加载时隐藏它?

$(document).ready(function() {
    $('.windowLoader').show().fadeOut(2000);
});

在页面开始加载后很长时间显示加载程序,有时在页面加载之前完成fadeOut事件的2000毫秒持续时间。

在DOM准备就绪后是否仍然执行加载程序的显示并在页面加载(而不是图像)之前保持可见,然后隐藏加载程序?

2 个答案:

答案 0 :(得分:4)

为什么不将加载器直接放在文档中然后准备好使用jQuery删除它? E.G。

<div id="loading"></div>

$(document).ready(function() {
    $("#loading").fadeOut(function() {
        $(this).remove(); // Optional if it's going to only be used once.
    });
});

否则,如果您在$(document).ready()然后.fadeIn()(/显示/创建)方法顶部的加载栏中执行其他操作,请执行大量代码,然后在底部调用.fadeOut()

如果您担心没有JavaScript的人查看加载栏,那么请提出以下内容:

<noscript>
    <style> #loading { display:none; } </style>
</noscript>

答案 1 :(得分:0)

它应该有所帮助 根据您的代码自定义

  $(document).ready(function () {
            // calculate height
            var screen_ht = jQuery(window).height();
            var preloader_ht = 5;
            var padding = (screen_ht / 5) - preloader_ht;
            jQuery("#preloader").css("padding-top", padding + "px");


            // loading animation using script 

            function anim() {
                jQuery("#preloader_image").animate({ left: '1px' }, 2000,
                function () {
                    jQuery("#preloader_image"), animate({ left: '1px' }, 2000);
                }
                );
            }
            //anim();
        });
    function hide_preloader() {
    // To apply Fade Out Effect to the Preloader 
    jQuery("#preloader").fadeOut(1000);
    }
    </script>
<style>
    #preloader {background: #1c1c1c;position:fixed;left:0px; top:0px; width:100%; height:100%; text-align:center;color:#fff;z-index: 100000000;}
    #preloader div {width:228px;height:240px;margin:auto;padding:10px 0;text-align:center;overflow:hidden;}
    #preloader_image {width:228px;height:240px;position: relative;left:0px;top:-10px;}
</style>
</head>

<body id="home" onload="hide_preloader()">
    <div id="preloader">
        <div>
            <div id="preloader_image">
                <img src="loading.gif" style="position: absolute;bottom: 0;left: 35%;">
            </div>
        </div>
    </div>
    </body>