常用的网页加载进度条之【实时获取加载数据的进度条】

之前我们做的进度条都是动画,没有获取实时数据。有些网站是从0到100%逐渐过渡的,也能看到相应数字的变化,那么用户在等待时候看到数字心里还是有个底的,等到了100%的时候就可以加载数据,比之前的方法可能更加好用一些。

课程知识点

  • 建立图像对象:图像对象名称 = new Image()
  • 属性:border complete height ……
  • 事件:onload onerror onkeydown onkeypress ……
  • src 属性一定要写到 onload 后面,否则程序在IE中会出错
<!doctype html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>进度条5</title>
        <style>
            * {
                padding: 0;
                margin: 0;
            }
            .loading {
                width: 100%;
                height: 100%;
                position: fixed;
                top: 0;
                left: 0;
                z-index: 100;
                background-color: #fff;
            }
            .loading .pic {
                width:100px;
                height: 100px;
                position: absolute;
                top: 0;
                bottom: 0;
                left: 0;
                right: 0;
                margin: auto;
                font-size: 25px;
                text-align: center;
                line-height: 100px;
            }
            .loading .pic span {
                display: block;
                width: 80px;
                height: 80px;
                position: absolute;
                top: 10px;
                left: 10px;
                /* background: #066; */
                border-radius: 50%;
                box-shadow: 0 3px 0 #666;
                -webkit-animation: rotate 1s infinite linear;
                animation: rotate 1s infinite linear;
            }
            @-webkit-keyframes rotate {
                0% {
                    -webkit-transform: rotate(0deg);
                }
                100% {
                    -webkit-transform: rotate(360deg);
                }
            }
            @keyframes rotate {
                0% {
                    transform: rotate(0deg);
                }
                100% {
                    transform: rotate(360deg);
                }
            }
        </style>
    </head>
    <body>
        <div class="loading">
            <div class="pic">
                <!--外面的圈圈-->
                <span></span>
                <!--数据加载进度(百分比数字)-->
                <b>0%</b>
            </div>
        </div>

        <img src="http://f.hiphotos.baidu.com/zhidao/pic/item/8b82b9014a90f60326b707453b12b31bb051eda9.jpg">
        <img src="http://pic5.qiyipic.com/common/20130524/7dc5679567cd4243a0a41e5bf626ad77.jpg?src=focustat_4_20130527_7">
        <img src="http://b.hiphotos.baidu.com/zhidao/pic/item/908fa0ec08fa513d2fd87b813b6d55fbb2fbd97a.jpg">
        <img src="http://h.hiphotos.baidu.com/zhidao/pic/item/14ce36d3d539b60075f33ca9ef50352ac65cb7ea.jpg">
        <img src="http://scimg.jb51.net/allimg/151109/14-151109164045494.jpg">
        <img src="http://2t.5068.com/uploads/allimg/151024/48-151024111511-50.jpg">
        <img src="http://f.hiphotos.baidu.com/zhidao/pic/item/8b82b9014a90f60326b707453b12b31bb051eda9.jpg">
        <img src="http://pic5.qiyipic.com/common/20130524/7dc5679567cd4243a0a41e5bf626ad77.jpg?src=focustat_4_20130527_7">
        <img src="http://b.hiphotos.baidu.com/zhidao/pic/item/908fa0ec08fa513d2fd87b813b6d55fbb2fbd97a.jpg">
        <img src="http://h.hiphotos.baidu.com/zhidao/pic/item/14ce36d3d539b60075f33ca9ef50352ac65cb7ea.jpg">
        <img src="http://scimg.jb51.net/allimg/151109/14-151109164045494.jpg">
        <img src="http://2t.5068.com/uploads/allimg/151024/48-151024111511-50.jpg">

        <script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/1.6.4/jquery.js"></script>
        <script>
            $(function(){
                var img = $("img");
                var num = 0;

                img.each(function(i){               
                    var oImg = new Image();

                    oImg.onload = function(){
                        /*清掉重复请求*/
                        oImg.onload = null;

                        num ++;
                        var load = parseInt(num/$("img").size()*100)+"%";
                        $(".loading b").html(load);
                        if(num >= i){
                            $(".loading").fadeOut();
                        }
                    }

                    oImg.src = img[i].src;
                });
            });
        </script>
    </body>
</html>

这个效果还是比较不错的,可以实时的侦测我们图像的或者页面的加载速度。这个效果非常实用,所以希望大家把这个效果来进行实现,这个知识并不是很难,都是我们学过的对象的方法制作的一个进度条,希望大家可以自己操作一下。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值