2015-07-21 72 views
0

我正在嘗試爲邊緣動畫組合構建測試系統,因此我可以加載不同的組合並測試它們是否正確顯示,更改其可定製字段等。我嘗試了Edge Commons的EC.loadComposition函數,但是從外部html傳遞組合名稱時遇到問題。 我已經得到了包含字段的主要組成部分,其中外部組件將被加載。我設法運行「Composition Loader」示例(http://edgedocks.com/content/2013/12/nesting-animate-compositions-composition-loader-edge-commons),但我想讓用戶有機會從瀏覽器級別命名要加載的組合作品。動態加載不同的EDGE組合

我想這會和Bootstrapping構圖有一些共同點,但是我對html/JS/Edge相當陌生,而且我無法按照自己的想法使其工作。

您是否知道任何解決方案或方向? 謝謝!

回答

0

好吧,我發現了一個解決辦法:

自舉回調,我叫AdobeEdge.Symbol.bindElementAction(),然後綁定加載功能的象徵,這可以作爲一個按鍵。通過這種方法,我可以使用JS或PHP來填充該函數的組合名稱參數。

我的代碼是完全侷促,因爲我從邊緣生成的.js文件複製它,但它看起來是這樣的:

AdobeEdge.bootstrapCallback(function(compId) { 
    comp = AdobeEdge.getComposition(compId); 
    AdobeEdge.Symbol.bindElementAction(compId, 'stage', "${Button1}", "click", function(sym,e){ 
var loadedComp=EC.loadComposition(document.getElementById('idCard').value ,sym.$("Content"));loadedComp.done(function(comp) 
{ loadedStage=comp.getStage();});});}); 

很抱歉的混亂,但它包含了這麼多嵌套定義,我無法格式化它看起來不錯;(

如果你找到更好的方法來解決這個問題,讓我知道!