![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
for文を使ったボタン
ボタンが2つあり、そのボタンをロールオーバー、ロールアウトでそれぞれ違うmcを動かしたいのですが、うまくいきません。ボタンを「maru1、maru2」として動かしたいmcを「btn1、btn2」とインスタンス名をつけて以下のスクリプトを書きました。
maru1.addEventListener(MouseEvent.ROLL_OVER,onMouse1);
maru1.addEventListener(MouseEvent.ROLL_OUT,outMouse1);
maru1.buttonMode = true;
maru2.addEventListener(MouseEvent.ROLL_OVER,onMouse2);
maru2.addEventListener(MouseEvent.ROLL_OUT,outMouse2);
maru2.buttonMode = true;
function onMouse1(e:MouseEvent):void{
mc_tween = new Tween(btn1, "scaleX", Elastic.easeOut, 0.7, 1, 1, true);
mc_tween.start();
}
function outMouse1(e:MouseEvent):void{
mc_tween = new Tween(btn1, "scaleX", Elastic.easeOut, 1, 0.7, 1, true);
mc_tween.start();
}
function onMouse2(e:MouseEvent):void{
mc_tween = new Tween(btn2, "scaleX", Elastic.easeOut, 0.7, 1, 1, true);
mc_tween.start();
}
function outMouse2(e:MouseEvent):void{
mc_tween = new Tween(btn2, "scaleX", Elastic.easeOut, 1, 0.7, 1, true);
mc_tween.start();
}
これでも動くのですが、ボタンが沢山あった場合にfor文を使ってできないかと考え、ttp://www.oro.co.jp/web/creator/flash/actionscript/soft-button.htmlを参考に
var mc_tween:Tween;
//イベント登録
for(var i:int = 1; i < 3; i++){
this["maru"+i].addEventListener(MouseEvent.ROLL_OVER, rollOverEvent);
this["maru"+i].addEventListener(MouseEvent.ROLL_OUT, rollOutEvent);
this["maru"+i].buttonMode = true;
}
function rollOverEvent(event:Event):void{
var btn:MovieClip = event.target as MovieClip;
mc_tween = new Tween(btn, "scaleX", Elastic.easeOut, btn.scaleX, 1.5, 1, true);
mc_tween = new Tween(btn, "scaleY", Elastic.easeOut, btn.scaleY, 1.5, 1, true);
addChildAt(btn, 5);
}
function rollOutEvent(event:Event):void{
var btn:MovieClip = event.target as MovieClip;
mc_tween = new Tween(btn, "scaleX", Elastic.easeOut, btn.scaleX, 1, 1, true);
mc_tween = new Tween(btn, "scaleY", Elastic.easeOut, btn.scaleY, 1, 1, true);
}
と書いたのですが、上手く行きません。<var btn:MovieClip = event.target as MovieClip;>の部分でどのように「btn1、btn2」を参照したらいいのでしょうか。
作業環境はmacOSX flashCS5 actionscript3です。よろしくお願い致します。
No.2ベストアンサー
- 回答日時:
書き直した方のスクリプトってよく見ると
Tweenをstart()してないんじゃないですか?
この回答への補足
返事が遅くなって申し訳ございません。
start();については質問欄に入れ忘れておりました。実際には入れておりますが、それでもうごきませんでした。ご指摘ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- JavaScript 指定したパスが現URLに含まれていたら特定要素を削除するJavascriptのコードを教えてください 2 2023/04/27 17:58
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
- その他(プログラミング・Web制作) Pythonで会員サイトの自動ログイン ID Nameがない 1 2022/12/16 02:09
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- JavaScript スマフォではボタンを表示させたくない 2 2023/01/20 14:26
- オープンソース Coinmarketcap api 1 2022/05/30 15:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
画像表示をアルファでフェード...
-
○秒間実行 AS3
-
アセンブリ言語のcasl2について...
-
photoshopで書いた四角の枠の中...
-
python ボタンを押すと複数の関...
-
VBAからPDFのテキストフィールド
-
RPG(AS400)の本、サイトってあ...
-
【VB.NET】別Formのボタンが押...
-
static関数がmapファイルに載ら...
-
VBAで改行の入ったデータの正規...
-
accessの検索について質問です...
-
360度パノラマ写真をループでき...
-
AS3.0 でフェードイン、
-
フォームのテキストの入力数字...
-
【Photoshop】レイヤー効果の境...
-
場面が移り変わるときかっこよ...
-
外部テキストファイルより座標...
-
Flashでレーダーチャート
-
多言語を混在できるか。
-
ウインドウハンドルとインスタ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
画像表示をアルファでフェード...
-
ムービークリップ変換について...
-
ActionScript スクロールメニュー
-
何で重なり合おうとするんでし...
-
ステージにある複数のインスタ...
-
for文を使ったボタン
-
配列に入れたムービークリップ...
-
○秒間実行 AS3
-
Actionscript3.0 子のイベント...
-
Actionscript3.0のクラス定義の...
-
FLASH 定型のASを登録しといて...
-
addChildの使い方
-
外部テキスト読み込みでマーキ...
-
AS3の配列の中にアクセス
-
関数を停止するには。。。。
-
as3 addEventListenerの動的な...
-
actionscript3.0 オブジェクト...
-
actionscript3.0 データ型について
-
複数mcのランダム再生とmc指定...
-
photoshopで書いた四角の枠の中...
おすすめ情報