Adobe Edge Animate - 如何获取当前标签?

时间:2013-05-03 20:17:29

标签: jquery-animate adobe-edge

在Adobe Edge Animate中,如何获取与给定时间对应的标签名称?我已经看到我可以使用

将当前时间作为整数
sym.getPosition()

但如果该位置有标签,我该如何将标签作为字符串?

2 个答案:

答案 0 :(得分:4)

function getLabel() {

 var stage = sym.getComposition().getStage();
 var labels = stage.timelines['Default Timeline'].labels;

 var currentLabel;
 var currentPosition = stage.getPosition();

 $.each( labels, function( label, position ){
  if (position <= currentPosition) currentLabel = label;
 });

 return currentLabel;

}

console.log( getLabel() );

这将返回当前位置(或下一个)之前的标签。

答案 1 :(得分:0)

对于我们这里正在寻找Adobe Animate 2019解决方案的人(就像我一样),它是相似的,但略有不同:

function getLabel(_this) {

     var currentLabel;
     var currentPosition = _this.currentFrame;

     _this.labels.forEach(function( label, index ){
        if (label.position <= currentPosition) currentLabel = label.label;
     });

     return currentLabel;

}

您在时间轴上的位置更容易获得,并且标签对象的组织方式有所不同。 (而且jQuery不可用。)