【问题标题】:create js as3 flash canvas js frame code runs once创建js as3 flash canvas js框架代码运行一次
【发布时间】:2018-11-27 17:39:18
【问题描述】:

在 Adob​​e 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 调用?

【问题讨论】:

    标签: html canvas createjs movieclip easeljs


    【解决方案1】:

    无论是在gotoAndPlay 还是gotoAndStop 期间,都绝对应该在时间线每次经过该帧时播放帧动作。事实上,这有时会导致多次添加事件侦听器的问题(每次框架头通过脚本时,例如在您的框架 652 上)。

    你能发布一个这不起作用的简化示例吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-09-22
      • 2012-09-07
      • 1970-01-01
      • 2023-04-09
      • 1970-01-01
      • 2021-07-18
      • 2010-09-20
      • 2020-05-07
      相关资源
      最近更新 更多