css新增样式Animation的运用

希望可以通过这个案例加深对Animation以及Transform 两大api的认识

效果图如下:

在这里需要注意的是:理应通过发送服务器请求来获取图片,从而达到这种动态加载的效果 通过node和ajax

          但本文采取了另一种本地动态加载的办法来展现:即 通过本地获取图片路径,利用图片的onload方法来判断加载成功与失败

模拟效果需要使用Chrome的开发者工具里的上网环境:

html代码如下:

<div id="wrap">
<div class="inner">
<img src="load/logo2.png" >
<p>已加载0%</p> </div> </div>

  

css代码如下:

@keyframes move{
from{
/* top: 0px; */
/* debugger; */
transform: rotateY(0deg);
}
to{
/* top: 40px; */
transform: rotateY(360deg);
}
}
*{
padding:;
margin:;
}
/* 解决滚动条 */
html,body{
height: 100%;
overflow: hidden;
}
/* 位置高宽 垂直水平居中方案 */
#wrap{
height: 100%;
position: relative;
background: gray; }
#wrap>.inner{
position: absolute;
left: 50%;
top: 50%;
transform: translate3d(-50%,-50%,0);
text-align: center;
white-space: nowrap;
perspective: 200px;
transform-style: preserve-3d; }
#wrap>.inner>img{
font-size: 50px;
position: relative;
animation: move 1s linear infinite normal; }

JavaScript代码如下:

window.onload=function(){
var pNode=document.querySelector("#wrap > .inner > p");
var flag=1;
// var img=document.querySelector("#wrap > .inner > img");
// 1.首先需要一个数组把js对象遍历出来 都添加到数组中 此时没有使用ajax 和node 模拟使用请求数据库数据
var arr =[];
for(arrNode in imgData){
arr=arr.concat(imgData[arrNode]); }
// 2.再把图片添加到浏览器中
for(i=0;i<arr.length;i++){
var img=new Image();
img.src=arr[i]; img.onload = function(){
flag++;
// 3.此时要计算p标签的内容
pNode.innerHTML="已加载"+Math.round(flag/arr.length*100)+"%";
}
img.onerror=function(){
console.log("图片加载失败");
}
}
}

最新文章

  1. 关于Http状态码
  2. Fitbit Flex
  3. HDU Game Theory
  4. CSS3初学篇章_1
  5. 正则表达式之IP地址检验
  6. Myeclipse 主题下载
  7. the grave of my scripts
  8. Spring源码学习之:spring注解@Transactional
  9. web.xml 配置介绍
  10. 02day1
  11. JavaScript,Java,php的区分大小写问题
  12. 基于heartbeat的单播方式实现tomcat高可用
  13. 十进制和n进制的转换(10进制转换为36进制)
  14. 【翻译自mos文章】SYS_OP_C2C 导致的全表扫描(fts)/全索引扫描
  15. Python发送邮件脚本
  16. 648. Replace Words 替换成为原来的单词
  17. RabbitMQ 入门指南——安装
  18. 【Revit API】获取链接模型中构件
  19. 腾讯云服务器 Centos6.5 安装 nginx1.12.0
  20. opp小节

热门文章

  1. sh_06_函数的返回值
  2. Linux基本命令使用(一)
  3. mssql的sql注入拿后台
  4. [BZOJ2111]:[ZJOI2010]Perm 排列计数(组合数学)
  5. SpringMVC拦截器+Spring自定义注解实现权限验证
  6. PTA编程总结一
  7. centos7 编译问题:aclocal-1.14: command not found
  8. lr_save_string和sprintf、lr_eval_string的使用
  9. SPEL 表达式解析
  10. gitlab+jenkins 搭建