2

大規模な FLA AS3 プロジェクトを Canvas/JS に移行しています。AS ファイルの大規模な外部フォルダー構造と、クラスに関連付けられた多くのライブラリ オブジェクトがあります。

FLA をキャンバス モードに変換しましたが、JS ファイルをオブジェクトに関連付ける方法が見つかりません。フレーム スクリプトに JS を含めることに関するオンラインの例を見てきましたが、外部ファイルとライブラリ オブジェクトの関連付けを使用してそれを行う方法を見つけたいと思っています。

それがどのように行われるかについての指示や例をいただければ幸いです。

ありがとうございました

4

3 に答える 3

4

私がしていることは、次のappenChildように Animate からオンザフライですべての JS ユーティリティを html に追加することです。

フレームスクリプト:

function loadScript(url) {
    var body = document.getElementsByTagName('body')[0];
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = url;
    body.appendChild(script);
}

loadScript('assets/app/myUtilities.js');
loadScript('assets/libs/coolTool.js');
loadScript('etc..');

s = this; //to have access to the stage

そして、次のように外部 JS からステージにアクセスします。

s.my_movieclip.addEventListener("click", fl_MouseClickHandler.bind(s));

function fl_MouseClickHandler() {
    console.log('I want banana!');
}

私が見たのは、残念ながら、Animate with canvas でライブラリからオブジェクトを動的にインスタンス化することはできないようです。最善の解決策は、タイムラインでビューを準備することだと思います。

一方、JS は多くの機能を提供します (たとえば、コードから Bootstrap Dialog Modals を呼び出すなど)。

于 2016-05-26T00:15:52.043 に答える