2013.09.3 15:42

[CreateJS]FlashのCreateJS化でクリックイベントが効かなくなる

カテゴリー:CreateJS

タグ:

最近CreateJSを勉強するようになりました。

Flashを簡単にJSに変換するツールって聞いていたけど、なかなかそうも行かないようだ。まず、いきなりクリックイベントが効かなくなり、つまづいてしまいました。。

CreateJS化の際に、別途クリックイベントの記述をメインのタイムラインに書かないといけないのですが、どうもその記述が間違っていたようです。

修正前


/* js

this.stop();

this.mc_start.onClick = playGame;

function playGame() {
 this.gotoAndPlay('start');
}

*/

修正後

/* js

this.stop();

this.mc_start.onClick = playGame;

var main = this;
function playGame() {
 main.gotoAndPlay('start');
}

*/

原因は「this」のスコープでした。JavaScriptの関数内で「this」をメインのタイムラインの変数としてそのまま使えないので、一旦別の変数に入れることで解決できました。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>