(转)TweenMax动画库学习(五)

本文深入探讨TweenMax动画库中的高级方法,包括currentLabel()获取当前状态、getLabelAfter()获取下一个状态及getLabelBefore()获取上一个状态的使用技巧。通过实例代码展示如何在网页中应用这些方法实现动态效果。

上一节我们主要聊了TweenMax动画库中的add()添加状态、tweenTo()完成指定的动画(过渡)等方法的使用,接下来我们继续学习TweenMax动画库中的其它方法的使用。    

      TweenMax动画库的官方网址:  http://greensock.com/timelinemax

      下面我们直奔主题,开始介绍TweenMax动画库中的其它方法的使用:

      1、页面布局

复制代码
 1 <script src="./../js/jquery-2.1.4.min.js"></script>
 2 <script src="./../js/TweenMax.js"></script>
 3 <style>
 4         html,body{
 5             margin: 0;
 6             padding: 0;
 7         }
 8         .div1{
 9             width:100px;
10             height:100px;
11             background: #8D121A;
12             position: absolute;
13             top:150px;
14             left:0;
15         }
16 </style>
复制代码
1 <body>
2 <div id="label"></div>
3 <div class="div1"></div>
4 </body>
    2、currentLabel():获取当前状态

            参数说明:

1 返回值是状态的字符串

           currentLabel()

复制代码
 1 <script>
 2         $(function(){
 3             var t =new TimelineMax();
 4             t.add("state1");
 5             t.to(".div1",1,{left:300,onComplete:function(){
 6                 getCurrentLabel();
 7             }},1);
 8             t.add("state2");
 9             t.to(".div1",1,{width:300,onComplete:function(){
10                 getCurrentLabel();
11             }},"+=1");
12             t.add("state3");
13             t.to(".div1",1,{height:300,onComplete:function(){
14                 getCurrentLabel();
15             }});
16             getCurrentLabel();
17             //获取当前状态
18             function getCurrentLabel(){
19                 console.log(t.currentLabel()); //控制台打印输出当前动画运动到的状态
20             }
21         });
22 </script>
复制代码
    3、getLabelAfter():获取下一个状态

            参数说明:

  1. 时间数字
            返回值是状态的字符串,如果没有下一个状态返回null

         getLabelBefore():获取上一个状态

            参数说明:

  1. 时间数字
            返回值是状态的字符串,如果没有上一个状态返回null
复制代码
 1 <script>
 2 $(function(){
 3             var t =new TimelineMax();
 4             t.add("state1");
 5             t.to(".div1",1,{left:300,onComplete:function(){
 6                 getCurrentLabel();
 7             }},1);
 8             t.add("state2");
 9             t.to(".div1",1,{width:300,onComplete:function(){
10                 getCurrentLabel();
11             }},"+=1");
12             t.add("state3");
13             t.to(".div1",1,{height:300,onComplete:function(){
14                 getCurrentLabel();
15             }});
16             getCurrentLabel();
17             //获取当前状态
18             function getCurrentLabel(){
19                 //获取当前的时间
20                 var currentTime = t.getLabelTime( t.currentLabel() );
21                 //获取到上一个状态
22                 var beforeLabel = t.getLabelBefore( currentTime );
23                 //获取到下一个状态
24                 var afterLabel  = t.getLabelAfter( currentTime );
25                 var str = "<p>上一个状态:"+ beforeLabel +"</p><p>当前状态:"+ t.currentLabel() +"</p><p>下一个状态:"+ afterLabel +"</p>";
26                 $("#label").html( str );
27             }
28         });
29 </script>
复制代码

动画演示:

转载于:https://www.cnblogs.com/sdzbxfcy/p/9798888.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值