从javascript调用组合准备(边缘动画)

时间:2013-05-13 21:59:33

标签: javascript html5 adobe-edge

我在html5边缘动画中遇到问题。我使用边缘动画创建了一个动画。 我想从外面打电话给作曲准备边缘动画。我尝试使用$.Edge.registerCompositionReadyHandler( compId, handlerFn, options )进行调用,但它给出了错误ReferenceError: $ is not defined。我无法解决这个问题,但我没有找到足够的文档。谁能帮帮我吗。

我的代码看起来像这样

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
<title>Untitled</title>
<!--Adobe Edge Runtime-->

<script type="text/javascript" charset="utf-8" src="teste1_edgePreload.js"></script>
<script type="text/javascript" src="teste1_resize.js"></script> 
<style>
    .edgeLoad-EDGE-1429726 { visibility:hidden; }
</style>
<!--Adobe Edge Runtime End-->

<script>
  $.Edge.registerCompositionReadyHandler("EDGE-1429726",scaleStage) //SCALE STAGE IS INSIDE THE JAVASCRIPT fn teste1_resize.js
function mover(){
      var stage = $.Edge.getComposition("EDGE-1429726").getStage();
      console.log($("#Stage").height());
      stage.mover();
 }
</script>

</head>
<body style="margin:0;padding:0;">
<div id="Stage" class="EDGE-1429726">
  <input type="button" value="Mover" onClick="mover();">
</div>

</body>

感谢ADVANCE

2 个答案:

答案 0 :(得分:6)

在Ena的帮助和一点修改下,我能够找到答案。

AdobeEdge.bootstrapCallback(function(compId) {
    AdobeEdge.Symbol.bindElementAction(compId, 'stage', 'document', 'compositionReady', function(sym, e){
        // composition is loaded, do stuff here
    });
});

答案 1 :(得分:3)

而不是

$.Edge.registerCompositionReadyHandler

使用

AdobeEdge.registerCompositionReadyHandler

此外,将您的代码放在此函数中:

AdobeEdge.bootstrapCallback(function(compId) {
    // Register your handlers here
});

因此,您确定已加载舞台,您可以在其中注册处理程序。