• 締切済み

どのようにするとループができるのですか?

今Flash、ActionScriptを勉強しています。 今、美容室のgardenというページを作れるようになろうと思っているのですが、どうしてもDesignerのページのActionScriptがまずいのか、nextを押し続けて一巡するとnextボタンがうまく作用しません。 これは何がいけないのでしょうか? ちなみに今書いているスクリプトはこんな感じです。 //nextを押したら8までジャンプ next.addEventListener(MouseEvent.CLICK,action); function action(event:MouseEvent):void { gotoAndStop(8); } よろしくお願いします。 http://www.garden-hair.jp/ginza/index.html

  • Flash
  • 回答数1
  • ありがとう数2

みんなの回答

  • chika_008
  • ベストアンサー率80% (20/25)
回答No.1

リスナーのadd,removeはしっかりおこなっていますでしょうか? 色々可能性はありますが、まずリスナーを切ったあとに 再度追加してるかみたほうがよいと思います。 みたところ大丈夫そうですが、1巡したあとにボタンのうえになにか 乗ってしまった可能性はありますでしょうか。 ご確認ください。

関連するQ&A

  • フラッシュについてcs3とcs4から

    今フラッシュについて勉強しているのですが、CS4のアクションスクリプトをCS3で動かそうとして、1046型が見つからないというエラーが出ました。もしよろしければ直し方を教えていただけませんか。 プログラムは stop(); btn01,addEventListener(MouseEvent.CLICK,jump_10); function jump_10(event:MotionEvent):void { gotoAndStop("10"); }; btn02,addEventListener(MouseEvent.CLICK,jump_20); function jump_20(event:MotionEvent):void { gotoAndStop("20"); }; btn03,addEventListener(MouseEvent.CLICK,jump_30); function jump_30(event:MouseEvent):void { gotoAndStop("30"); }; です。足りないものがありましたらご指摘ください。 よろしくお願いいたします。

    • ベストアンサー
    • Flash
  • FLASH/一定時間停止後、再生されるscript

    flash CS4/ActionScript3.0にてサイトローテーションバナーを制作しております。 ムービークリップ「btn1_mc」をクリックするとフラッグ「scene1」を再生し、 「btn1_mc」にポインタが乗った時は一定時間停止し、再生されるという動きを作りたいのですが、初心者のため、うまくActionScriptが書けません。 setTimeout関数を使えば良いということはわかったのですが… 下記コードに書き加え、実装する方法を教えていただければ助かります。 よろしくお願いします。 btn1_mc.addEventListener(MouseEvent.CLICK,btn1Click); btn1_mc.addEventListener(MouseEvent.ROLL_OVER,btn1Over); btn1_mc.addEventListener(MouseEvent.ROLL_OUT,btn1Out); btn1_mc.buttonMode=true; function btn1Click(evt:MouseEvent):void{ gotoAndPlay("scene1"); } function btn1Over(evt:MouseEvent):void{ gotoAndStop("scene1"); btn1_mc.gotoAndStop(2); } function btn1Out(evt:MouseEvent):void{ gotoAndPlay("60"); btn1_mc.gotoAndStop(1); }

  • クラスまたはインタフェイス'MouseEvent'をロードできませんでした。

    「クラスまたはインタフェイス\'MouseEvent\'をロードできませんでした。」 というエラーの解決方法を教えてください。 yes_btn_mcというムービークリップをクリックすると70フレーム目にとばしたいのです。 yes_btn_mc.addEventListener(MouseEvent.CLICK, yesClick); yes_btn_mc.buttonMode=true; function yesClick(evt:MouseEvent):void{ gotoAndstop(70); } 上記のようにアクションパネルに記述しましたが、 「クラスまたはインタフェイス\'MouseEvent\'をロードできませんでした。」 と出て動きませんでした。 どうすれば動くようになるかわかる方、教えてください。

  • Flashで出来ること2

    ActionScriptについての質問です。 今、ActionScript3.0を勉強中です。 全面Flashを作っていますが、ボタンをクリックしたときにメールソフトへジャンプする方法がいまいち分かりません。 自己流でURLリンクを真似て //イベントリスナーの登録 question.addEventListener(MouseEvent.CLICK,gotoURL2); //URL2へジャンプする function gotoURL2(event:MouseEvent):void{ var theURL2= new URLRequest("mailto:*********@yahoo.co.jp"); navigateToURL(theURL2,"_blank"); } という風にしてみたのですが、クリックするとメールソフトのほかに新しいウインドウがメールアドレスをURLと置き換えて開かれてしまいます。 この場合いったいどうするとメールソフトのみが開かれるのでしょうか??

  • ActionScript3.0について教えていただきたいです。

    ActionScript3.0について教えていただきたいです。 下記の添付画像を参考にしていただくと理解しやすいかと思います。 FLASH CS4にて、フレームの移動を行いたいのですが、どうも上手くいきません。 「メニュー画面」でボタンを選択し、「サブメニュー画面」を表示するところまではできるのですが、 緑のボタンをクリックして、「目的のページ」に移動する事ができません。 「メニュー画面」から「サブメニュー画面」へは、 ボタン名.addEventListener(MouseEvent.CLICK,任意の関数名); function 任意の関数名(e:MouseEvent):void{ gotoAndStop(ページ数); } というスクリプトで動きますが、「サブメニュー画面」から「目的のページ」への移動ができない状況にあります。 どなたかわかる方いらっしゃいましたら、是非教えていただきたいです。 よろしくお願いします。

    • ベストアンサー
    • Flash
  • actionscript3.0でボタン操作無効化

    flashのHPを作っております。 (mc)ボタンを配置しクリックすると画面の背景が変わる操作をしたいと思っており(top、new、main・・・など) 下記のHPのような http://www.mediacreator.jp/tutorials/show_tutorial.asp?id=69&pn=3 操作ボタンを作っております。 上記HPは2.0で製作されているため、3.0に改変し、 アクションを下のようにしました。 var buttonNames= new Array("button1", "button2", "button3", "button4"); button1.buttonMode = true; button2.buttonMode = true; button3.buttonMode = true; button4.buttonMode = true; button1.addEventListener(MouseEvent.CLICK, button1click); button2.addEventListener(MouseEvent.CLICK, button2click); button3.addEventListener(MouseEvent.CLICK, button3click); button4.addEventListener(MouseEvent.CLICK, button4click); function resetButton(buttonName){ for(var i = 0; i < buttonNames.length; i++){ if(buttonNames[i] != buttonName){ this[buttonNames[i]].gotoAndStop(1); this[buttonNames[i]].enabled = true; } } } function button1click(event:MouseEvent):void { resetButton(button1); this.gotoAndStop(2); this.enabled = false; } function button2click(event:MouseEvent):void { resetButton(button2); this.gotoAndStop(2); this.enabled = false; } function button3click(event:MouseEvent):void { resetButton(button3); this.gotoAndStop(2); this.enabled = false; } function button4click(event:MouseEvent):void { resetButton(button4); this.gotoAndStop(2); this.enabled = false; } コンパイルエラーは無くなったのですが、ボタン自体が動いてくれません。 どこが間違っているか分かる方、お教え下さい!

  • AS3のボタンアクションについて

    FlashCS3 ActionScript3.0 ボタンアクションでつまづいています。 http://www.cucinadicasamia.fr/ 上記サイトのように、ボタンをクリックすれば、ダウンの状態を保持、 他のボタンをクリックでダウンの状態を解除。 のようにしたいのですが、上手くいきません。 下記のようにコードを書いたのですが。。。 A_mc.addEventListener(MouseEvent.CLICK,Click); A_mc.addEventListener(MouseEvent.ROLL_OVER,Over); A_mc.addEventListener(MouseEvent.ROLL_OUT,Out); B_mc.addEventListener(MouseEvent.CLICK,Click); B_mc.addEventListener(MouseEvent.ROLL_OVER,Over); B_mc.addEventListener(MouseEvent.ROLL_OUT,Out); function Over(event:MouseEvent):void{ event.target.gotoAndPlay("B"); } function Out(event:MouseEvent):void{ event.target.gotoAndPlay("A"); } function Click(event:MouseEvent):void{ trace("click"); event.target.gotoAndPlay("C"); } A_mc.buttonMode = true; B_mc.buttonMode = true; /////////////////////////////////////////////////////////////////////// function Clickとfunction Overが同時に発生しているので上手くいかないのでしょうか。。。 ご教授お願いいたします。

  • actionscript 3.0 の外部リンク

    初めて質問させていただきます。 Flash CS3 のactionscript3.0にて、サイト内リンクのボタンを作成したのですが、 フラッシュを読み込んだ時点で、インスタンスthe URL4がポップアップで開いてきてしまいます。 そのような記述をしていないのでどうしたら良いか分からず… 何かお知恵をお貸しいただけると幸いです。 よろしくお願い致します。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ↓実際に書いたacitonscriptです。URLはダミーです。 //theURL1という変数に代入し、URLRequestのインスタンスを生成 var theURL1:URLRequest = new URLRequest("http://www.111/A.html"); var theURL2:URLRequest = new URLRequest("http://www.222/B.html"); var theURL3:URLRequest = new URLRequest("http://www.333/C.html"); var theURL4:URLRequest = new URLRequest("http://www.444/D.html"); navigateToURL(theURL1); navigateToURL(theURL2); navigateToURL(theURL3); navigateToURL(theURL4); // イベントリスナーの登録 A_btn.addEventListener(MouseEvent.CLICK,gotoURL1); B_btn.addEventListener(MouseEvent.CLICK,gotoURL2); C_btn.addEventListener(MouseEvent.CLICK,gotoURL3); D_btn.addEventListener(MouseEvent.CLICK,gotoURL4); // URL1へジャンプする function gotoURL1(event:MouseEvent):void { var theURL1:URLRequest = new URLRequest("http://www.111/A.html"); navigateToURL(theURL1,"_self"); } // URL2へジャンプする function gotoURL2(event:MouseEvent):void { var theURL2:URLRequest = new URLRequest("http://www.222/B.html"); navigateToURL(theURL2,"_self"); } // URL3へジャンプする function gotoURL3(event:MouseEvent):void { var theURL3:URLRequest = new URLRequest("http://www.333/C.html"); navigateToURL(theURL3,"_self"); } // URL4へジャンプする function gotoURL4(event:MouseEvent):void { var theURL4:URLRequest = new URLRequest("http://www.444/D.html"); navigateToURL(theURL4,"_self"); }

  • Actionscript 同じような処理をまとめたい

    閲覧ありがとうございます。 プログラム初心者です。 FlashでサイトのTOPページに置くメニューを作成しています。 Flashのヘルプを見ながらできたのですが5つあるボタンにつきいちいち関数を作っていて、もう少しコンパクトに書きたいと思いました。 きれいに書くにはどうするのがベストでしょうか? もしかしてActionscriptは一つのボタンにつき一つの関数を書かなければいけないのですか? //自分なりに書いてみてうまくいかなかったソースです。 //実行するとボタンを押す前に一番上に書いたアドレス(http://address1.php)に飛んでしまいました。 var Add1:String = "http://address1.php"; var Add2:String = "http://address2.php"; var Add3:String = "http://address3.php"; var Add4:String = "http://address4.php"; var Add5:String = "http://address5.php"; function onClickButton(event:MouseEvent, address:String) :void { var selectURL:URLRequest = new URLRequest(address); navigateToURL(selectURL,"_self"); } button1.addEventListener(MouseEvent.CLICK, onClickButton(Add1)); button2.addEventListener(MouseEvent.CLICK, onClickButton(Add2)); button3.addEventListener(MouseEvent.CLICK, onClickButton(Add3)); button4.addEventListener(MouseEvent.CLICK, onClickButton(Add4)); button5.addEventListener(MouseEvent.CLICK, onClickButton(Add5));

    • ベストアンサー
    • Flash
  • addEventListnerとaddChild

    お世話になります。 Flash初心者です。 ActionScript 3.0でカードゲームみたいなものを作成しようとしていますが、addEventListenerの扱いで行き詰りました。 概要としては (1)絵柄オブジェクトとテキストオブジェクトを組み合わせてカードオブジェクトを作成 (2)カードをaddChildでメインのタイムラインに生成 (3)カードをクリックすると画像が変わる といったことをしたいです。 そのため、メインのタイムラインの1フレーム目に以下のような記述を入れました。(抜粋) --- var player01Card:Array = new Array(); //60枚のカードを生成 for(i=0;i<60;i++){  player01Card[i] = new Card();  addChild(player01Card[i]); } //カードそれぞれに、クリックされたら絵柄が変わるように設定・・・したい for(var i:int; i<player01Card.length ;i++){  player01Card[i].addEventListener(MouseEvent.CLICK,   function(event:MouseEvent):void{    player01Card[i].gotoAndStop(36);   }  ); } --- ・Cardはカードのムービークリップに設定したリンケージです。 ・カードのムービークリップは36フレーム以上あり、画像を変えないため1フレーム目で「stop();」しています。 ・36フレーム目に飛ぶことで絵柄を変えるつもりです。 が、カードをクリックすると -- TypeError: Error #1010: 条件は未定義であり、プロパティがありません。 -- が発生します。 ・gotoAndStopの代わりにカードのムービークリップ上に[画像を生成するメソッド]を作成してそれをたたこうとした場合にも同じエラーが発生します。 ・traceのような関数では問題は発生しないため、ムービークリップを触りにいくことが問題だと思います。 ・player01Card[i].gotoAndStop(36);をaddEventListenerの外に配置した場合は正常に動作します。 ・addChildでなく、最初からメインのタイムラインにインスタンスを配備してやるとgotoAndStopできます。 addEventListenerの仕様なのかと考えているのですが、どう変えてやれば動くのかがまったくわかりません。 一応検索して似たような質問を発見していますが、私のコードには微妙に合いません。 http://okwave.jp/qa/q4646183.html >evnet.target.gotoAndStop(36);としてしまうとカードの合成前の絵柄やテキストがgotoAndStopされてしまう 何が問題なのか、そしてどうすれば動かせるのか教えていただけないでしょうか。

    • ベストアンサー
    • Flash

専門家に質問してみよう