页面预加载loading动画,再载入内容
默认情况下如果网站请求速度慢,所以会有一段时间的空白页面等等,用户体验效果不好,见到很多的页面都有预加载的效果,加载之前先加载一个动画,后台进程继续加载页面内容,当页面内容加载完之后再退出动画显示内容,这样的用户体验更好。
例如此链接:http://crusader12.com/C12HoverAlls/
这篇文章是从上面链接的内容上拔下来的,操作流程很简单,只有两部如下
首先定义一个loader.css文件,如下内容
.chromeframe {margin: 0.2em 0;background: #ccc;color: #000;padding: 0.2em 0;}
#loader-wrapper {position: fixed;top: 0;left: 0;width: 100%;height: 100%;z-index:999999;}
#loader {display: block;position: relative;left: 50%;top: 50%;width: 150px;height: 150px;margin: -75px 0 0 -75px;border-radius: 50%;border: 3px solid transparent;/* COLOR 1 */border-top-color: #FFF;-webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */-ms-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */-moz-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */ -o-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */ animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */z-index:1001;}
#loader:before {content: "";position: absolute;top: 5px;left: 5px;right: 5px;bottom: 5px;border-radius: 50%;border: 3px solid transparent;/* COLOR 2 */ border-top-color: #FFF;-webkit-animation: spin 3s linear infinite; /* Chrome, Opera 15+, Safari 5+ */-moz-animation: spin 3s linear infinite; /* Chrome, Opera 15+, Safari 5+ */-o-animation: spin 3s linear infinite; /* Chrome, Opera 15+, Safari 5+ */-ms-animation: spin 3s linear infinite; /* Chrome, Opera 15+, Safari 5+ */ animation: spin 3s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */}
#loader:after {content: "";position: absolute;top: 15px;left: 15px;right: 15px;bottom: 15px;border-radius: 50%;border: 3px solid transparent;border-top-color: #FFF;/* COLOR 3 */ -moz-animation: spin 1.5s linear infinite; /* Chrome, Opera 15+, Safari 5+ */-o-animation: spin 1.5s linear infinite; /* Chrome, Opera 15+, Safari 5+ */-ms-animation: spin 1.5s linear infinite; /* Chrome, Opera 15+, Safari 5+ */ -webkit-animation: spin 1.5s linear infinite; /* Chrome, Opera 15+, Safari 5+ */animation: spin 1.5s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */}@-webkit-keyframes spin {0%{ -webkit-transform: rotate(0deg); /* Chrome, Opera 15+, Safari 3.1+ */-ms-transform: rotate(0deg); /* IE 9 */transform: rotate(0deg); /* Firefox 16+, IE 10+, Opera */}100%{-webkit-transform: rotate(360deg); /* Chrome, Opera 15+, Safari 3.1+ */-ms-transform: rotate(360deg); /* IE 9 */transform: rotate(360deg); /* Firefox 16+, IE 10+, Opera */}
}@keyframes spin {0%{ -webkit-transform: rotate(0deg); /* Chrome, Opera 15+, Safari 3.1+ */-ms-transform: rotate(0deg); /* IE 9 */transform: rotate(0deg); /* Firefox 16+, IE 10+, Opera */}100%{-webkit-transform: rotate(360deg); /* Chrome, Opera 15+, Safari 3.1+ */-ms-transform: rotate(360deg); /* IE 9 */transform: rotate(360deg); /* Firefox 16+, IE 10+, Opera */}
}#loader-wrapper .loader-section {position: fixed;top: 0;width: 51%;height: 100%;background: #1abc9c; /* Old browsers */z-index: 1000;-webkit-transform: translateX(0); /* Chrome, Opera 15+, Safari 3.1+ */-ms-transform: translateX(0); /* IE 9 */transform: translateX(0); /* Firefox 16+, IE 10+, Opera */}
#loader-wrapper .loader-section.section-left {left: 0;}
#loader-wrapper .loader-section.section-right {right: 0;}/* Loaded */
.loaded #loader-wrapper .loader-section.section-left {-webkit-transform: translateX(-100%); /* Chrome, Opera 15+, Safari 3.1+ */-ms-transform: translateX(-100%); /* IE 9 */transform: translateX(-100%); /* Firefox 16+, IE 10+, Opera */-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000); transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);}
.loaded #loader-wrapper .loader-section.section-right {-webkit-transform: translateX(100%); /* Chrome, Opera 15+, Safari 3.1+ */-ms-transform: translateX(100%); /* IE 9 */transform: translateX(100%); /* Firefox 16+, IE 10+, Opera */-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000); transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);}
.loaded #loader {opacity: 0;-webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out;}
.loaded #loader-wrapper {visibility: hidden;-webkit-transform: translateY(-100%); /* Chrome, Opera 15+, Safari 3.1+ */-ms-transform: translateY(-100%); /* IE 9 */transform: translateY(-100%); /* Firefox 16+, IE 10+, Opera */-webkit-transition: all 0.3s 1s ease-out; transition: all 0.3s 1s ease-out;}
/* JavaScript Turned Off */
.no-js #loader-wrapper {display: none;}
.no-js h1 {color: #222222;}
#loader-wrapper .load_title {font-family:'Open Sans';color:#FFF; font-size:19px; width:100%; text-align:center; z-index:9999999999999; position:absolute; top:60%; opacity:1; line-height:30px; }
#loader-wrapper .load_title span { font-weight:normal; font-style:italic; font-size:13px; color:#FFF; opacity:0.5;}
第二步:在网站页面header标签和body标签加入以下代码
// 引入jquery <!--页面加载start-->
<link rel="stylesheet" type="text/css" href="css/loader.min.css"><script type="text/javascript"> // 等待所有加载$(window).load(function(){$('body').addClass('loaded');$('#loader-wrapper .load_title').remove();});
</script> <div id="loader-wrapper"><div id="loader"></div><div class="loader-section section-left"></div><div class="loader-section section-right"></div><div class="load_title">正在加载LoveFeel站点<br><span>V1.0</span></div>
</div>
<!--页面加载end-->
HoverAlls页面源码如下操作,他先是加载一段json封装之后再显示内容的,我上面的代码省去了json的操作。
$(window).load(function(){$('body').addClass('loaded').Chameleon({'current_item':'hoveralls','json_url':'../Envato/items.json'});$('#loader-wrapper .load_title').remove();
});
当然也可以访问我的页面看看效果
http://lovefeel.top/marry/
查看原文:http://www.ibloger.net/article/401.html
相关阅读:
30种CSS3炫酷页面预加载loading动画特效(推荐):http://www.ibloger.net/article/1558.html
Loaders.css 多种纯CSS加载进度动画效果:http://www.ibloger.net/article/1568.html
load-awesome 53种纯CSS3预加载页面loading指示器动画特:效http://www.ibloger.net/article/1800.html
CSS3-Preloaders 6种CSS3预加载Loading指示器动画特效:http://www.ibloger.net/article/1556.html
按钮特效 基于SVG和Segment.js的Loading加载:http://www.ibloger.net/article/1554.html
页面预加载loading动画,再载入内容相关推荐
- jsp预加载转圈_30种CSS3炫酷页面预加载loading动画特效(推荐)
这是一组效果非常炫酷的CSS3页面预加载loading动画特效.该特效共有30种不同的loading效果.所有的加载动画都是使用CSS3来完成,jQuery代码只是用于隐藏加载动画.当你点击页面的任何 ...
- 好看的html登录遮罩提示加载中,jQuery炫酷页面预加载Loading特效插件
fakeLoader.js是一款轻量级的 jQuery 炫酷页面预加载Loading特效插件.它能帮助我们创建一个全屏遮罩效果的旋转loading效果来模拟页面预加载过程. Bower安装 bower ...
- vue网页预加载页面_页面预加载效果
vue网页预加载页面 View demo 查看演示Download Source 下载源 Today we want to show you how to create a very simple p ...
- [Swift通天遁地]五、高级扩展-(11)图像加载Loading动画效果的自定义和缓存
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...
- 小程序性能优化之页面预加载方案——让你的小程序运行如飞 进阶篇
小程序性能优化之页面预加载方案 进阶篇 转载请注明出处:https://blog.csdn.net/sinat_27612147/article/details/80798452 写在前面 预加载方案 ...
- html5 loading游戏,12种炫酷html5 svg加载loading动画特效
12种炫酷html5 svg加载loading动画特效 刘振兴 代码分享 2015年11月23日 14182 3条评论 这是一款使用HTML5 SVG技术制作的12种炫酷html5 svg加载load ...
- jQuery:等页面DOM加载完毕后再执行代码
等着页面DOM加载完毕后再执行代码 第一种方式(比较麻烦,不常用): $(document).ready(function(){ - }) 第二种方式(常用): $(function(){ - }) ...
- Android 花里胡哨的加载Loading动画
记录查找了一些实用的加载动画,真的是花里胡哨!!! 1. AVLoadingIndicatorView-master AVLoadingIndicatorView各种加载效果,适合做加载loading ...
- 纯web项目不能使用mui.preload进行页面预加载的解决办法
首先: 纯web项目不能使用mui.preload进行页面预加载的, 比如[基于微信的web项目](http://ask.dcloud.net.cn/question/20644) 怎么办呢? 自己写 ...
最新文章
- [YTU]_2441( C++习题 复数类--重载运算符2+)
- R中方差,协方差,相关系数
- c++趣味小程序_工具类小程序10天增长103万全复盘
- python parser count_8 个 Python 实用脚本,早掌握早下班!
- 计算机应用基础0006 19秋在线作业2,川大《计算机应用基础0006》13春在线作业2
- [Linux] 安装samba
- 字节跳动AI Lab 秋季提前批招聘
- java 父类私有成员_java父类私有成员
- Gradle项目同步失败错误
- Python 基礎 - 函數介紹
- 数学建模——典型相关分析及相关SPSS操作
- Win10家庭版安装VMware虚拟机-开启时出现蓝屏的问题
- XDOJ 完全平方数
- 搭建vue脚手架(vue-cli)--基于vue2.0版本
- jq 下拉列表选中事件_JQuery select各种事件
- web前端程序员职位介绍
- VMware 三种网络模式
- stomp与veil用法
- 怎么申请邮箱?163邮箱如何注册使用?
- Flutter-常见问题