【发布时间】:2015-06-22 11:21:23
【问题描述】:
我有一个默认自动播放的 Adobe Edge 动画。
有没有办法通过javascript代码禁用或阻止自动播放?
例如,通过在使用AdobeEdge.loadComposition() 加载合成时传递一些选项,或者通过设置一些事件监听器来执行此操作?
附注我无法在 Adobe Edge 中编辑动画本身
【问题讨论】:
标签: javascript events adobe-edge
我有一个默认自动播放的 Adobe Edge 动画。
有没有办法通过javascript代码禁用或阻止自动播放?
例如,通过在使用AdobeEdge.loadComposition() 加载合成时传递一些选项,或者通过设置一些事件监听器来执行此操作?
附注我无法在 Adobe Edge 中编辑动画本身
【问题讨论】:
标签: javascript events adobe-edge
我通过添加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);
});
});
【讨论】: