2

我在 html5 边缘动画中遇到问题。我使用边缘动画创建了一个动画。我想从外部调用边缘动画的合成准备。我尝试调用 using $.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>

提前致谢

4

2 回答 2

6

在 Ena 的帮助和少量修改下,我找到了答案。

AdobeEdge.bootstrapCallback(function(compId) {
    AdobeEdge.Symbol.bindElementAction(compId, 'stage', 'document', 'compositionReady', function(sym, e){
        // composition is loaded, do stuff here
    });
});
于 2013-05-24T21:29:08.463 回答
3

代替

$.Edge.registerCompositionReadyHandler

利用

AdobeEdge.registerCompositionReadyHandler

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

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

因此,您确定该阶段已加载并且您可以在其中注册处理程序。

于 2013-05-22T15:55:33.457 回答