一般我们在控制css3 animate动画时可以通过简写以减少代码量,只要在需要动画的元素上追加一下类名就可以了,如下例子

/*淡入并向上移动一点位置出现*/
.fadeInUp{
-webkit-animation:fadeInUp 1000ms .8s ease both;
}
@-webkit-keyframes fadeInUp {
0% {
opacity: 0;
-webkit-transform: translateY(20px);
transform: translateY(20px)
} 100% {
opacity: 1;
-webkit-transform: translateY(0);
transform: translateY(0)
}
}
 
这样跟以前的相比已经算是布局精简的了。但是当一个页面中一次性有很多个元素在运行css3动画时,更糟糕的是居然都大部分的动画效果是同一个类型的但运动的时间点与持续时间不同。这时候我们为了控制不同元素的效果的开始时间点已经持续时间长度,只能复制复制再复制,然后根据需要调整一下运动的时间点与持续时间长。像下面这样:
.fadeInUp01{
-webkit-animation:fadeInUp 1200ms .1s ease both;
} .fadeInUp03{
-webkit-animation:fadeInUp 1400ms 1.2s ease both;
}
.fadeInUp04{
-webkit-animation:fadeInUp 1600ms 1.4s ease both;
}
.
.
.

这样一直复制下去。。。。。

如果我们能够把动画的开始时间以及持续时间长单独抽离出来进行单独控件就好了?

于是我们想到了js

//对每一个追加CusAnimateDom类名的动画元素设置自定义属性
$(".CusAnimateDom").each(function () {
var _delay = $(this).attr("data-delay");
var _duration = $(this).attr("data-duration");
$(this).css("-webkit-animation-delay", (_delay) + "ms");
$(this).css("-webkit-animation-duration", (_duration) + "ms");
});
<img src="data:images/load.png" class="corner CusAnimateDom ScalingAnimate" data-delay="600" data-duration="1500" lazypath="images/card/corner.png" />

请参看http://gift.guzhongyi.com/看下源代码即可更深刻了解,认识。

如何方便的控制css3动画开始时间点与持续时间的更多相关文章

  1. 用css3动画 @keyframes里设置transform:rotate(); 控制动画暂停和运动用属性:animation-play-state:paused暂停,在微信和safari里设置paused无效,在QQ里是正常的

    这几天遇到了两个很奇葩的问题,终于找到原因,趁还记得解决方法,赶紧记下来: 用css3动画 @keyframes里设置transform:rotate(); 控制动画暂停和运动可以用属性:animat ...

  2. 【WEB前端系列之CSS】CSS3动画之Animation

    前言 动画使用示例https://github.com/AndyFlower/web-front/tree/master/css3/loading 学习CSS3中Animation之前先来看一个动画特 ...

  3. css3 动画应用 animations 和transtions transform在加上JavaScript 可以实现硬件加速动画。

    transitions(过渡) 被应用于元素指定的属性变化时,该属性经过一段时间逐渐的过渡到最终想要的值. 主要包括四个属性: 执行变换的属性:transition-property 变换延续的时间: ...

  4. css3动画入门transition、animation

    css3动画 transition.animation CSS3 transition demo <!DOCTYPE html> <html> <head> < ...

  5. css3动画机制原理和实战

    这段时间喜欢上css3动画效果了,关于这个每个人都有不同的看法,在我个人看来css3在做一些小页面的动画效果还是很好用的,一些简单的小动画要是用js的话,未免浪费. 要是做大一点的话最好js+css3 ...

  6. CSS3动画几个平时没注意的属性

    一.timing-function: steps() 一开始在使用CSS3的时候并没有太注意这个timing-function,只是注意到自定义贝塞尔曲线. 1)一个项目中的实例 先来看看左边加了st ...

  7. CSS3动画:YouTube的红色激光进度条

    本文只是讨论和实现了动画效果,并未将动画与页面实际下载关联,有朋友们问如何应用,可以使用现成的一些插件比如这个,这个,还有这个. 之前一篇文章<CSS3 动画一瞥>简单介绍了CSS3动画相 ...

  8. CSS3 动画一瞥

    伴随HTML5而来的CSS3让前端大湿们可以用简单的CSS样式即可写出动画效果来,而在这之前,一提到动画我们可能会想到JavaScript,Flash,Java插件等.如果是用JavaScript那倒 ...

  9. 第 26 章 CSS3 动画效果

    学习要点: 1.动画简介 2.属性详解 3.简写和版本 主讲教师:李炎恢 本章主要探讨 HTML5 中 CSS3 的动画效果,可以通过类似 Flash 那样的关键帧模式控制运行. 一.动画简介 CSS ...

随机推荐

  1. Tri Tiling[HDU1143]

    Tri Tiling Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...

  2. C++做client Java做客户端传送数据

    因为要用到,但发现Java怎么都收不到C发来的数据,除非C端自动挂掉,java会一口气全收回来. 后来才发现是因为C发过来的Java用readline是读不到回车的,所以会一直等待. 所以不要用rea ...

  3. TYVJ P1051 选课 Label:多叉转二叉&&树形dp(虐心♥)

    描述 学校实行学分制.每门的必修课都有固定的学分,同时还必须获得相应的选修课程学分.学校开设了N(N<300)门的选修课程,每个学生可选课程的数量M是给定的.学生选修了这M门课并考核通过就能获得 ...

  4. 字符串全排列(permutation)

    Reference: http://www.cnblogs.com/sujz/archive/2011/06/16/2082831.html 问题:给定字符串S,生成该字符串的全排列. 方法1:依次从 ...

  5. 使用Python中的urlparse、urllib抓取和解析网页(一)(转)

    对搜索引擎.文件索引.文档转换.数据检索.站点备份或迁移等应用程序来说,经常用到对网页(即HTML文件)的解析处理.事实上,通过Python 语言提供的各种模块,我们无需借助Web服务器或者Web浏览 ...

  6. 点击repeater的一个修改事件触发全部repeater每一行的修改事件

    <td align="center">                            <asp:LinkButton ID ="btnvip&q ...

  7. Android--学习记录

    最近天天被兔子激励,所以开始找工作,发现Android和iOS都会更有竞争力,所以就想学一下Android Android比iOS更开放,学习难度可能会更大,我已经做好了吃苦的准备 计划是三个月搞定, ...

  8. SQL Server 收缩数据库

    //删除大量数据 /*** * * BEGIN TRANSACTION; * SELECT * INTO #keep FROM Original WHERE CreateDate > '2011 ...

  9. 中科大各Linux发行版的更新源列表

    sudo vi /etc/apt/sources.list Raspberry Pi deb http://mirrors.ustc.edu.cn/raspbian/raspbian/ jessie ...

  10. PAT天梯赛练习题 L3-002. 堆栈(线段树查询第K大值或主席树)

    L3-002. 堆栈 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 大家都知道“堆栈”是一种“先进后出”的线性结构,基本操作有 ...