js网页顶部线性页面加载进度条,jquery头部线性进度条总结

40084次浏览

前言

网页顶部加载进度条,近年来很流行,很多网站都采用了这种加载方式。网上也有这样类似的插件,今天我们总结一下网页顶部线性页面加载进度条。 静态效果如下: 点击运行可以测试效果!

头部LoadingBar线性进度条总结

上面的代码只是静态效果,没有和网页加载联系在一起,要和网页加载联系在一起,今天推荐几个插件。

插件一:LoadingBar

LoadingBar.js的地址是:http://www.onextrapixel.com/2013/09/02/loadingbar-js-adding-a-youtube-like-loading-bar-to-your-website/

用ajax方式读取页面内容,然后加载。

插件二:NProgress.js

NProgress.js的地址是:http://ricostacruz.com/nprogress/

由于我也没有实际应用过,在这里就不多多阐述了,具体的方法里面都有详细的描述。

静态效果的实现

下面我再来说一说文章一开始的那个加载效果的实现吧!虽然只是静态的,但是也有借鉴意义,代码也是来源于网络。

由于上面的topbar是用css3写的,所以兼容性不是很好,IE游览器有些效果不兼容。大体的写法如下:

body{
                margin:0;
            }
            #progress {
                position:fixed;
                height: 2px;
                background:#2085c5;
                transition:opacity 500ms linear
            }
            #progress.done {
                opacity:0
            }
            #progress span {
                position:absolute;
                height:2px;
                -webkit-box-shadow:#2085c5 1px 0 6px 1px;
                -webkit-border-radius:100%;
                opacity:1;
                width:150px;
                right:-10px;
                -webkit-animation:pulse 2s ease-out 0s infinite;
            }

            @-webkit-keyframes pulse {
                30% {
                    opacity:.6
                }
                60% {
                    opacity:0;
                }
                100% {
                    opacity:.6
                }
}

上面的css就针对webkit写了一个,为了浏览器兼容,可以多写一些前缀,具体css3前缀可以看http://www.haorooms.com/post/css_common 这篇文章的第22条CSS3的一些前缀总结

html代码:

<div id="progress">
            <span></span>
</div>

jquery代码:

$({property: 0}).animate({property: 100}, {
                duration: 3000,
                step: function() {
                    var percentage = Math.round(this.property);

                    $('#progress').css('width',  percentage+"%");

                     if(percentage == 100) {
                            $("#progress").addClass("done");//完成,隐藏进度条
                        }
                }
});

设定其持续时间是3秒钟!你可以改动一下,把3秒钟的时间改成你网页的加载时间,就可以做出网页动态加载进度条了。。

Tags: jsjquery

相关文章: