2015-06-22 65 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); 
    }); 
});