2015-06-22 38 views
0

我有一个默认情况下自动播放的Adobe Edge动画。Adob​​e Edge如何禁用代码自动播放?

有没有办法来禁用或阻止自动播放的JavaScript代码?

例如通过加载AdobeEdge.loadComposition()加载合成或通过设置某个事件侦听器来执行此操作时通过某些选项?

P.S.我无法在Adobe Edge中编辑动画本身

回答

1

我已通过添加一个compositionReady侦听器来解决此问题。此事件发生在自动播放之前,因此我可以影响动画的自动播放设置。

我在拨打AdobeEdge.loadComposition()后将代码放在右下方。这里的超时设置为2000毫秒。该解决方案适用于带有子符号的动画(使用sym.ci,其中包含对子符号的引用)。

AdobeEdge.bootstrapCallback(function(compId){ 
    AdobeEdge.Symbol.bindElementAction(compId, 'stage', 'document', 'compositionReady', function(sym, e){ 
     sym.stopAll(-1, false); 
     sym.setAutoPlay(false); 
     if (sym.ci) { 
      for(var i = 0; i < sym.ci.length; ++i) { 
       sym.ci[i].setAutoPlay(false); 
      } 
     } 
     var playDelay = setTimeout(function(){ 
      sym.playAll(); 
     }, 2000); 
    }); 
});