Jump to content
Search Community

PIBC-QingYe

Members
  • Posts

    8
  • Joined

  • Last visited

Posts posted by PIBC-QingYe

  1. I think I have find one way. Using the tl.time() to compare the label's time to judge reach which label.

    btn.addEventListener('click', function(){
      var tl=new TimelineMax();
      var obj=$("#entrance");
      for(var i=0;i<4;i++){
        var label="mylabel_"+i;
        tl.addLabel(label);
        if(i%2==1){
          label="mylabel_"+i;
          tl.to(obj,5,{x:100+i*100, onUpdate:
                    function(){
          var panel=document.getElementById("test");
          var t=tl.time().toFixed(2);
          for (var i = 0; i <labels.length; i++) {
            if(t>labels[i].time&&t<labels[i+1].time){
              panel.innerHTML=labels[i].name;
              break;
            }
           }; 
        }});
        }else{
          tl.to(obj,5,{y:100+i*100, onUpdate:
                    function(){
          var panel=document.getElementById("test");
          var t=tl.time().toFixed(2);
          for (var i = 0; i <labels.length; i++) {
            if(t>labels[i].time&&t<labels[i+1].time){
              panel.innerHTML=labels[i].name;
              break;
            }
           };       
        }});
        }
      }
      tl.addLabel("mylabel_final");
      var labels = tl.getLabelsArray();
        for (var i = 0; i < labels.length; i++) {
        console.log("label name: " + labels[i].name + ", time: " + labels[i].time);
      };
    });

    But i'm not sure when using timescale() to change the play speed ,the tl.time() could compare labels'time well.

  2. Thanks Jack,I have studied the tutorial which you given , but it can not solve my problem.Just like the following codes:

    var t = new TimelineLite();
    var car = new Array();
    for (var i = 0; i < initnum; i++) { //init
          car[i] = {
            id:xxx,
            name:xxx,        
            tl: t
         };
    }

    I give each car object a timeline and I want to play these timelines together.However I can only play these timelines one by one.

    for(var i=0;i<initnum;i++)
    {
      ...
    for (var j = 0; j <xxx; j++) 
    {
         ....
         car[i].tl.to(obj,...  );
         car[i].tl.to(obj,... );
     }
    car[i].tl.play();
    }

    So how can I to play these timelines together.

×
×
  • Create New...