原生JS实现首页进度加载动画
在加载数据的时候,我们的页面有时候会出现无法显示的情况,这种情况通常是动画flash加载的页面居多,那么原生JS实现首页进度加载动画要怎么实现呢?今天爱站技术频道小编主要为大家带来介绍,大家可以参考下文学习。
早上写了个首页进度加载动画,本想在我的博客里用上,测试发现博客园加载太快,根本看不到动画效果,直接就加载‘Complete'了,算了,还是不要把博客搞得太臃肿了!
于是我就写了个演示页面,在body里加了个iframe来加载大一点的网站,这样就看出效果了!
用Safari打开貌似CSS动画的播放时间变成同步了,不知道什么原因,本地测试又没问题(请大神指点!),用Chrome、Firefox倒是没问题,而IE我没测试过
加载时间统计我用了Windows对象的performance属性,它是专门用来来计算精确时间的方法,这是MDN关于performance属性的描述
本实例的实现原理比较简单,不过不是真正的按文件大小来显示加载进度的,只是在触发document.onreadystatechange事件时,根据document.readyState的状态来改变显示进度的。其实还有一种靠谱一点的方法,用XMLHttpRequest对象的实例的progress事件,详细解读XMLHttpRequest,如:
var request = new XMLHttpRequest();
request.onprogress = function (e) {
if(e.lengthComputable){ //lengthComputable是指文件是否有大小,值为true、false
progress.innerHTML = Math.round(100* e.loaded/ e.total) + \'%\'; //loaded、total表示已经加载的大小和总大小
}
}
用以上方法实现起来也挺麻烦,而且也不能实现100%的真实加载进度,所以我索性就假一点了,不用他了!
本实例还用到了document.styleSheets[0].insertRule()方法,这里有我对它的总结:用原生JS读写CSS样式的方法总结
关于CSS动画的实现,大家自己看代码吧,很简单的代码,如果看的吃力,建议去补补CSS基础了,介绍个干货,CSS中文参考手册网站,我表达能力有限,就不在这里嚼口舌了 。
如果您正在因为找不到原生JS实现首页进度加载动画的解决方法,不如来js.aizhan.com找一找,肯定可以找到您想要的知识,希望爱站技术频道小编收集整理的内容对您有用哦!
相关推荐
-
JS中关键字列表总结
爱站技术频道小编给朋友们来说说看JS中关键字列表总结这方面的知识点,对此不熟悉的朋友一定要看看下面这篇文章,小编所分享的内容在日后或许能帮助到你解决问题,接下来就一起看一看。
-
JS中二分查找法的介绍
不知道你对JS中二分查找法的介绍有没有兴趣了解下,如果有的话,那就看看爱站技术小编所提供的内容,相信这篇文章对你日后能提供到帮助,欢迎朋友们随时来查看。
-
JS中的有名函数和无名函数介绍
今天小编带你们来了解下JS中的有名函数和无名函数这方面的内容,小编通过例子的形式给你们进行了讲解,希望对大家有一定的帮助,接下来就请看一看这个资料吧!
-
JS查看运行代码如何刷新
技术小编来为你们讲解下JS查看运行代码如何刷新,下面这篇文章详细介绍了实例代码的内容,给需要的朋友提供了很好的参考资料,希望你们看完后可以从中得到办法。
-
JS怎么取得外部函数名
有朋友问JS怎么取得外部函数名,为了让你们更好的理解问题内容,小编分享了相关参考资料,有兴趣来了解一下的朋友记得查看下,希望通过这篇文章你们能从中得到方法。
