zoukankan      html  css  js  c++  java
  • 网页加载进度条

    网页加载进度条

    一、通过加载状态时间制作进度条

    document.onreadystatechange  //页面加载状态改变时的事件
    document.readyState //返回当前文档状态

    向服务器发送请求的状态:

      1. uninitialized - 还未开始载入

         2. loading - 载入中

      3.  interactive - 已加载,文芳与用户可以开始交互

         4. complete - 载入完成

    下面的例子是我写的一个简单的加载的动画,可以根据自己的需要自行编写

    写一段加载动画的样式:

    html:

    <div id="loading" class="loading">
        <div class="load_begin"></div>
        <div class="load_end"></div>
    </div>

    css:

    /*加载中动画*/
    .loading{
        width:100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
        background: #fff;
        z-index: 999;
    }
    
    .load_begin{
        width:20px;
        height: 20px;
        border-radius: 20px;
    
        position: absolute;
        top:0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        background:rgba(0,255,0,.6);
    
        animation: divRidu 1s ease-in infinite alternate;
    }
    
    .load_end{
        width:40px;
        height: 40px;
        border-radius: 40px;
    
        position: absolute;
        top:0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        background:rgba(255,0,0,.1);
    
        animation: divRidu 1s ease-in 1s infinite alternate;
    }
    
    @keyframes divRidu  {
        from {
            width:20px;
            height: 20px;
            border-radius: 20px;
        }
        to {
            width:40px;
            height: 40px;
            border-radius: 40px;
        }
    }

    调用该方法,状态为 complete 时 隐藏 加载div

    js:

    document.onreadystatechange = function(){
         if(document.readyState = 'complete'){
             $("#loading").hide();
         }
    };
    

     

    二、顶部固定的加载进度条

    <!--固定在顶部的进度条-->
        <div id="loading-style4" class="loading">
            <div class="style4-pic"></div>
        </div>
    
        <script>
            $(".style4-pic").animate({"10%"},100);
        </script>
    
    
        <section>
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
    
            <script>
                $(".style4-pic").animate({"20%"},100);
            </script>
    
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
    
            <script>
                $(".style4-pic").animate({"40%"},100);
            </script>
    
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
    
            <script>
                $(".style4-pic").animate({"60%"},100);
            </script>
    
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
    
            <script>
                $(".style4-pic").animate({"80%"},100);
            </script>
    
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
            <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt="">
    
            <script>
                $(".style4-pic").animate({"100%"},100);
                $("#loading-style4").fadeOut();
            </script>
    
        </section>

    css

    /*加载中动画*/
    .loading{
        100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
        background: #fff;
        z-index: 999;
    }
    
    .style4-pic{
         0%;
        height: 5px;
        position: absolute;
        top:0;
        left: 0;
        background: red;
    }
    

      

    三、实时获取加载数据的进度条

    <div id="loading-style3" class="loading">
            <div class="style3-pic">
                <span></span>
                <b>0%</b>
            </div>
    </div>
    
    //添加图片 加载 <section> <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt=""> <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt=""> <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt=""> <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt=""> <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt=""> <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt=""> <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt=""> <img src="http://seopic.699pic.com/photo/50063/6498.jpg_wh1200.jpg" alt=""> </section>
    <script src="js/jquery-3.2.1.min.js"></script>
    <script>
    
        $(function(){
            var img = $("img");  //获取所以得图片
            var num = 0;
            img.each(function(i){
                var oImg = new Image();
    
                oImg.onload=function(){
                    num ++;
    
                    $("#loading-style3 b").html(parseInt(num/img.length*100)+ '%');
    
                    if(img.length == num + 1) {
                        $("#loading-style3").hide();
                    }
                };
    
                oImg.src = img[i].src;
            })
        })
    
    </script>

     css

    /*加载中动画*/
    .loading{
        100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
        background: #fff;
        z-index: 999;
    }
    
    .style3-pic{
         100px;
        height: 100px;
        line-height: 100px;
        text-align: center;
        position: absolute;
        top:0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        font-size: 20px;
    }
    
    .style3-pic span{
        display: block;
         80px;
        height: 80px;
        position: absolute;
        top: 10px;
        left: 10px;
        border-radius: 50%;
        box-shadow:0 3px 0 #666;
    
        animation:rotate 1s infinite linear;
    }
    
    @keyframes rotate {
        0%{transform: rotate(0deg);}
        100%{transform: rotate(360deg);}
    }
    

      

  • 相关阅读:
    QT -- 文本文件的读写(QFile、QTextStream)
    QT -- 单例模式
    QT -- 代码封装成库给C调用的问题
    QSS -- QSS入门1
    什么是 GPU 加速?
    QT -- 文件操作 QFile
    C++ -- break和continue的区别
    C++ -- Switch的基本用法
    C++ -- ?:运算符
    OpenCV -- cv::IMREAD_GRAYSCALE 与 cv::cvtColor
  • 原文地址:https://www.cnblogs.com/yulingjia/p/7611110.html
Copyright © 2011-2022 走看看