TweenMaxjs是一个性能很高的js动画框架,它与css3动画具有时间轴的概念。你可以很方便的把动画添加到一个时间轴队列里面去按照你需要的顺序去执行。

官网地址: http://greensock.com

怎么使用:

首先我们要做的是引入该文件,

第二步就是使用new关键字创建一个时间轴实例

var T1;
T1 = new TimelineMax({
//delay: 0.3,
//paused: true
})

1.如果有一组动画同时开始动画,我们可以使用链式操作的方式实现

T1 = new TimelineMax({
// delay: 0.3,
//paused: true
onStart: function () {
options.onStart();
},
onComplete: function () {
options.onComplete();
}
})
.fromTo(el.sm1, 1, {
y: -100,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeOut
})
.fromTo(el.sm2, 1, {
x: 100,
opacity: 0
}, {
x: 0,
opacity: 1,
ease: Power3.easeOut
})

2.如果有一组动画,按时间先后顺序一个一个的出现场景

我们可以使用FromTo()方法,positio参数时间设置不一样就行了

T1 = new TimelineMax({
//delay: 0.3,
//paused: true
})
.fromTo([$(".Jan_sm_1")], 0.5, {//
y: 50,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeNone
},0.3)
.fromTo([$(".Jan_txt_1")], 0.5, {
y: 50,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeNone
},0.6)
.fromTo([$(".m-logo")], 0.5, {
y: 50,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeNone
},0.9)
.fromTo([$(".sm-2")], 0.5, {
y: -20,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeNone
}, 1.5)

也可以通过添加一个标签(label),再相对于这个label去设置时间差

T1 = new TimelineMax({
//delay: 0.3,
//paused: true
})
.add("labal")
.fromTo([$(".Jan_sm_1")], 0.5, {//
y: 50,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeNone
},"labal")
.fromTo([$(".Jan_txt_1")], 0.5, {
y: 50,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeNone
},'labal+=0.6')
.fromTo([$(".m-logo")], 0.5, {
y: 50,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeNone
},'labal+=1')
.fromTo([$(".sm-2")], 0.5, {
y: -20,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeNone
}, 'labal+=2')

也可以定义多条时间轴,把后面的时间轴添加到当前时间轴,就可以按顺序执行了

T1 = new TimelineMax({
//delay: 0.3,
//paused: true
}) .fromTo([$(".Jan_sm_1")], 0.5, {//
y: 50,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeNone
}, 1); T2 = new TimelineMax({
//delay: 0.3,
//paused: true
}).fromTo([$(".Jan_txt_1")], 0.5, {
y: 50,
opacity: 0
}, {
y: 0,
opacity: 1,
//rotation:90,
ease: Power3.easeNone
}, 1) T3 = new TimelineMax({
//delay: 0.3,
//paused: true
}).fromTo([$(".m-logo")], 0.5, {
y: 50,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeNone
},1) T4= new TimelineMax({
//delay: 0.3,
//paused: true
}).fromTo([$(".sm-2")], 0.5, {
y: -20,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeNone
}, 1)
T1.add(T2).add(T3).add(T4);

注:如果不使用add把他们添加进去的话,4个会同事执行

3.如果有一组动画,效果相同。只是时间按选后顺序出现的场景

我们可以使用staggerFromTo()方法

参数如下

.staggerFromTo( targets:Array, duration:Number, fromVars:Object, toVars:Object, stagger:Number, position:*, onCompleteAll:Function, onCompleteAllParams:Array, onCompleteScope:* )
第一个参数是目标元素---对谁做动画,可以睡是一组数组对象,可以是一个类似jQuery的对象($(“. myClass”)),也可以直接是一个css选择器(. myClass h2. myClass)
T1 = new TimelineMax({
delay: 0.3,
//paused: true
})
.staggerFromTo([$(".Jan_sm_1"), $(".Jan_txt_1")], 0.5, {//错层队列动画,适合一组动画效果相同时间按选后顺序出现的场景
y: 50,
opacity: 0
}, {
y: 0,
opacity: 1,
ease: Power3.easeNone
}, 0.3)

TweenMax学习一的更多相关文章

  1. TweenMax学习整理--特有属性

    TweenMax学习整理--特有属性   构造函数:TweenMax(target:Object, duration:Number, vars:Object) target:Object -- 需要缓 ...

  2. tweenMax学习笔记

    tweenMax是一款缓动插件,能实现很多牛逼的效果,在网上看了些demo,确实很吊,虽说很多用CSS3也能做出来,但是技多不压身,学之. 网上的demo还是很多的,但是资料不多,唯一能够让我有思绪的 ...

  3. TweenMax动画库学习(六)

    目录            TweenMax动画库学习(一)            TweenMax动画库学习(二)            TweenMax动画库学习(三)            Tw ...

  4. TweenMax动画库学习(五)

    目录            TweenMax动画库学习(一)            TweenMax动画库学习(二)            TweenMax动画库学习(三)            Tw ...

  5. TweenMax动画库学习(四)

    目录            TweenMax动画库学习(一)            TweenMax动画库学习(二)            TweenMax动画库学习(三)            Tw ...

  6. TweenMax动画库学习(一)

    目录            TweenMax动画库学习(一)            TweenMax动画库学习(二)            TweenMax动画库学习(三)            Tw ...

  7. TweenMax动画库学习(二)

    目录            TweenMax动画库学习(一)            TweenMax动画库学习(二)            TweenMax动画库学习(三)            Tw ...

  8. TweenMax动画库学习(三)

    目录               TweenMax动画库学习(一)            TweenMax动画库学习(二)            TweenMax动画库学习(三)           ...

  9. TweenMax动画库学习

    之前在做HTML5移动端开发的时候,用的都是Animate.css,这个插件封装的的确很好,但是在做一些缓动方面的动画,它也有一定的不足之处,比如手要写一个连续的动画,需要不停的去重复写函数,使得代码 ...

随机推荐

  1. JavaSE基础01

    JavaSE基础篇01 ------从今天开始,我就学习正式java了,O(∩_∩)O哈哈~,请大家多指教哦 一.Windows常见的dos命令 操作dos命令: win7 --->开始 --- ...

  2. thinkphp 3.23语言包加载

    模块home: 1.config 里添加 配置 //'配置项'=>'配置值'    'LANG_SWITCH_ON'   => true,      // 开启语言包功能    'LANG ...

  3. (转).NET开发人员必备的可视化调试工具(你值的拥有)

    1:如何使用 1:点击下载:.NET可视化调试工具 (更新于2016-11-05 20:55:00) 2:解压RAR后执行:CYQ.VisualierSetup.exe 成功后关掉提示窗口即可. PS ...

  4. 如何使用Android JetPlayer类

    在Android中,还提供了对Jet播放的支持,Jet是由OHA联盟成员SONiVOX开发的一个交互音乐引擎.其包括两部分:JET播放器和JET引擎.JET常用于控制游戏的声音特效,采用MIDI(Mu ...

  5. jsf初学解决faces 中文输入乱码问题

    中文乱码,貌似在java里很常见,请看简单代码: 很简单的faces <div class="td-block"> <h:outputLabel class=&q ...

  6. PCA数据降维

    Principal Component Analysis 算法优缺点: 优点:降低数据复杂性,识别最重要的多个特征 缺点:不一定需要,且可能损失有用的信息 适用数据类型:数值型数据 算法思想: 降维的 ...

  7. ASP.NET4.5Web API及非同步程序开发系列(2)

    认识ASP.NET WEB API 他的前身为WCF WEB API用于协助WCF支持RestFul.现在集成进ASP.NET,正式更名为ASP.NET WEB API,ASP.NET Web API ...

  8. [Unity3D]Unity+Android交互教程——让手机"动"起来

    想要用Unity实现一个二维码扫描的功能,然后网上找插件,找到一个貌似叫EasyCodeScanner,但下载下来用用,真不好使,一导入运行就报错,调好错了再运行发现点按钮没反应,反复试了几遍发现还是 ...

  9. react native中对props和state的理解

    最近使用react native这个新的技术做完一个项目,所以赶紧写个博客巩固一下. 今天我想说的是props和state,当然这是我个人的理解,如果有什么不对的地方,望指正. 首先我先说说props ...

  10. 转:WCF、WebAPI、WCFREST、WebService之间的区别

    WCF.WebAPI.WCFREST.WebService之间的区别   注明:转载 在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web API ...