在Adobe Animation for HTML5 Canvas中输出的文件中生成的js代码包含影片剪辑的对象,其中包含要在每个帧中运行的代码。
(lib.cdseacc02_07 = function(mode,startPosition,loop) {
// timeline functions:
this.frame_0 = function() {
if(typeof showNarration !== "undefined"){ showNarration(1); }
}
this.frame_644 = function() {
playSound("02_07_01wav");
}
this.frame_652 = function() {
this.closeBtn_1.addEventListener("click", closepopup_1.bind(this));
}
this.frame_738 = function() {
this.stop();
}
}).prototype = p = new cjs.MovieClip();
如果从此代码在动画片段上调用gotoAndPlay,则帧功能上的代码不会在帧经过时在帧上运行,此帧代码仅在第一次播放时间轴时起作用。是否有任何方法可以使每个播放头通过该帧时帧上的代码可以运行,即使它是通过代码中的gotoAndPlay调用?
答案 0 :(得分:0)
无论时间gotoAndPlay
或gotoAndStop
,每次时间轴经过该帧时,都应绝对播放帧动作。实际上,这有时会引起一些问题,即多次添加事件侦听器(每次帧头传递脚本时,例如在帧652上)。
您能发布一个简化的示例吗?