いまさらながらターゲット指定
いまさらながら、イベントハンドラメソッド定義でのターゲット指定を全然理解していなかった。
イベントハンドラメソッド内は、そこはもう別の世界なんだと理解。
3つのボタンがあり、それぞれロールオーバーしたときに、それぞれの中でgotoAndPlayする、というものを作るばあい、
間違った例 : tgtMC.gotoAndStop("over")
for (var i = 0; i<3; i++) {
var tgtMC = this["menu"+i];
tgtMC.onRollOver = function() {
initButtons();
tgtMC.gotoAndStop("over");
};
}
正しい例 : this.gotoAndStop("over")
for (var i = 0; i<3; i++) {
var tgtMC = this["menu"+i];
tgtMC.onRollOver = function() {
initButtons();
this.gotoAndStop("over");
};
}
ここを読んでみて、わかったようなわからないような。というかthisが本当にわけわからない。
逆に、これを記述したフレームのメソッド(initButtons())を、イベントハンドラメソッド内から使う場合、あたりまえにthisから始めると認識されない。
トラックバック(0)
このブログ記事を参照しているブログ一覧: いまさらながらターゲット指定
このブログ記事に対するトラックバックURL: http://www.pokeal.com/movabletype/mt-tb.cgi/63

コメントする