1

我需要从我的HTML 页面(index.html - 而不是 edgeActions.js 页面)控制我的边缘符号之一

例如,我有一个图像符号:“sym1”,我想从主 html 页面中隐藏它。我试过:

sym.$("sym1").hide();

但它不起作用..

这是我可以使它工作的唯一方法(仅在 edgeActions 页面中):

  Symbol.bindElementAction(compId, symbolName, "document", "compositionReady", function(sym, e) {
         var ex1 = sym.$( "sym1" );         

         yepnope({
            both: [
                "libs/jquery-ui.min.js",
                "libs/jquery-ui.css",
            ],
            callback: function() {

         ( ex1 ).hide();
            }
         });

      });

我需要了解如何使用 JQuery 从主 html 页面控制符号。

4

2 回答 2

8

在边缘程序之外抓取符号需要您做的不仅仅是调用“符号”。因此,让我向您介绍如何获取符号:

1st- 您必须获得对特定组成的参考。这通常是#Stage 元素上的类。如果您没有在 Edge Animate 中为其指定特定名称,则默认名称将类似于 EDGE-1230930194 之类的奇怪名称。

var myAnim = AdobeEdge.getComposition("nameOfComposition");

2nd- 你需要抓住特定的符号

var mySymbol = myAnim.getSymbols("nameOfSymbol")[0]; // Because it's in an array

那里有它!你得到了自己的象征。例如,如果您想反向播放它,那么您可以这样做:

mySymbol.playReverse();

为了更精细的操作,更有趣的事情是像这样抓取底层元素:

var mySymbolElem = mySymbol.getSymbolElement();

然后当然你可以使用任何 jQuery 方法来解决它:

mySymbolElem.fadeOut(5000, function(){alert("alerts rox")});

希望有帮助!

于 2012-11-28T09:16:03.297 回答
0

Edge 渲染到 html 页面后,所有符号将与新的 id 名称合并,并由“_”连接。例如,如果您要更改名为“thumb01”的符号的图像:

$('#Stage_thumb01').css('background-image',  'url('thumb_img_02.jpg')');

“Stage”是 Edge html 的根默认容器

于 2015-08-06T07:14:19.430 回答