JavaScript页面加载进度条

该博客介绍了如何通过JavaScript模拟实现页面加载进度条。由于浏览器无法直接获取加载对象大小,作者利用DOM逐行解析的特性,为每个加载节点添加进度条代码。当节点加载完成,进度条更新,页面加载完毕时,进度达到100%并淡出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目前没有任何浏览器可以直接获取正在加载对象的大小,因此我们只能采取迂回战术,利用浏览器DOM加载的方式去模拟实现页面加载进度
代码如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
    <title>JavaScript页面加载进度条</title>
    <style type="text/css">
    img{
        width: 100px;
        height: 66px;
    }
    img:hover{
        box-shadow: 2px 3px 1px -3px black;
    }
    .progess{
        height: 2px;
        width: auto;
        background-color: red;
        position: absolute;
        top: 0;
        left: 0;
    }
    </style>
    <script type="text/javascript" src="jquery-2.0.3.js"></script>
</head>
<body>
<div class="progess"></div>
<div class="wrap-all">
    <div class="head">
            <script type="text/javascript">
                $(".progess").animate({width:"10%"},50)
            </script>
        <div class="main-head">
        <!-- 优快云加载页面 -->
            <iframe width='738' height='523' class='preview-iframe' scrolling='no' frameborder='0' src='http://download.youkuaiyun.com/source/preview/9883977/17e3567dce83bff3bda370affbf19024' ></iframe>
            <script type="text/javascript">
                $(".progess").animate({width:"33%"},50)
            </script>
            <script type="text/javascript">
                for(var i=0;i<100000;i++){
                    j += i;
                }
            </script>
        </div>
        <div class="second-head">
            <img src="1.jpg">
            <img src="2.jpg">
            <img src="3.jpg">
            <img src="4.jpg">
            <img src="5.jpg">
            <img src="6.jpg">
        </div>
        <script type="text/javascript">
                $(".progess").animate({width:"76%"},50)
            </script>
        <div>
            <pre>
                JavaScript之Function函数
函数是对象!JavaScript(简称js)中不存在类和接口这种数据结构,所以ES使用引用类型这种数据结构来代替类(两者很相似,但并不同)。引用类型的值(对象)是引用类型的实例。因为Function是引用类型,而每个函数又都是Function的实例,由此,我们可以推论出

            </pre>
        </div>
        <script type="text/javascript">
                $(".progess").animate({width:"100%"},50).fadeOut();
            </script>
    </div>
</div>

</body>
</html>

这里利用浏览器逐行解析DOM的方式,在每一个节点下面加入进度条代码,等到当前节点加载完毕之后,进度条代码执行,页面显示进度情况,当页面加载完毕,进度变为100%,然后淡出。
参考资料:优快云博客各位大拿的博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值