• 締切済み

ボタンでイメージの変更/Netscapeでエラーがでてしまいます。

もしかすると単純なことかもしれないのですけど、 どうしても分からないので質問させて下さい。 ボタンを押すたびに次の画像に変わり、 最後の画像のあとは次のページへ進むようにしたいと思っています。 ちょっとした紙芝居のような感じです。 配布されていたスクリプトをもとに以下のようにしてみたのですが、 Netscape4.6で動かすと、次のページに行く時に エラーが発生してブラウザがなんと強制終了してしまいました。 IE5.5とNetscape6ではうまく動いたのですが。。 どうすればエラーにならないでしょうか?? もうひとつ、ボタンをimage buttonにしたいのですけど、そのまま<input type=image>にしてもダメみたいです。image buttonで動作させるにはどうしたら良いでしょうか。 ↓内容はこんな感じです↓ <SCRIPT Language="JavaScript"> <!-- Num = 1 maxPage = 3; function next() { Num = Num + 1; if (Num > maxPage) { location.href="next.html" } document.myImage.src = "image"+Num+".gif"; document.myForm.page.value = Num; } // --> </SCRIPT> ------------------------------------- <img SRC="image1.gif" WIDTH="100" HEIGHT="100" NAME="myImage"> <form NAME="myForm"> <input TYPE="button" VALUE="次へ" onClick="next()" NAME="button2"> </form> 長々と申し訳ありません。詳しい方どうかよろしくお願いします!!!

みんなの回答

  • Mugi
  • ベストアンサー率84% (11/13)
回答No.1

こうすればいいはず。 function next() { Num = Num + 1; if (Num > maxPage) { location.href="next.html" }else{ document.myImage.src = "image"+Num+".gif"; document.myForm.page.value = Num; } }

amicolore
質問者

お礼

Mugiさん、ありがとうございます! その後初心者なりに考えてみて、私のやりたい内容だったら無理にボタンを使わなくてもイメージにリンクをはってしまえばいい事に気付きました。 どうにかこんな感じになりました。 これだとどうやらエラーも出ないようです。 ------------------------ Num = 1 maxPage = 3; function next() { Num = Num+1; if (Num > maxPage) { location.href="2.html" }; document.myImage.src = "image"+Num+".gif"; } --------------------- <img name="myImage" SRC="image1.gif" WIDTH="100" HEIGHT="100"><br> <a HREF="javaScript:next()"><img src="next.gif" width="50" height="20" border="0"></a> ---------------------- Mugiさんの教えてくださった「else」を省かないというのも、後で試してみます。ありがとうございました!

関連するQ&A

  • ボタンを押すたびに画像を切り替えるには?

    まずソースを載せます↓ <html> <head> <meta http-equiv="Content-Script-Type" content="text/javascript"> <meta http-equiv="Content-type" content="text/html; charset=shift-jis"> <title>ボタンを押すたびに画像を表示します</title> <body bgcolor="#FFFFFF"> <script type="text/javascript"> function func1(str) { document.write('<img src="c:/MyImage/dog1.jpg" width="104" height="91" />'); } function func2(str) { document.write('<img src="c:/MyImage/dog2.jpg" width="104" height="91" />'); } function func3(str) { document.write('<img src="c:/MyImage/dog3.jpg" width="104" height="91" />'); } function func4(str) { document.write('<img src="c:/MyImage/dog4.jpg" width="104" height="91" />'); } </script> </head> <body bgcolor="#FFFFFF"> <form id="myForm" name="myForm"><p> <input type="button" value="ボタン1" name="button1"onclick="func1('dog1.jpg');"> <input type="button" value="ボタン2" name="button2"onclick="func2('dog2.jpg');"> <input type="button" value="ボタン3" name="button3"onclick="func3('dog3.jpg');"> <input type="button" value="ボタン4" name="button4"onclick="func4('dog4.jpg');"> </p></form> </body> </html> 今回の質問内容はボタンを押すたびに画像を表示するjavascriptプログラムです 画像はCドライブ直下のMyImageフォルダにdog1.jpg,,dog2.jpg,dog3.jpg, dog4.jpgを入れています なんで動かないのがわからないです 回答できたらよろしくお願いします

  • ボタンの飛び先を一つにして、押したボタンのプロパティを変更するには?(超初心者)

    VBじゃないかもしれませんが・・・ HTMLファイルに、VBScriptで次のように書いたのですが、 <html> <head>   ////省略/// <SCRIPT>   ////省略/// Sub Button1_OnClick   ////省略///   Call XXXX EndSub Sub Button2_OnClick   ////省略///   Call XXXX EndSub Sub Button3_OnClick   ////省略///   Call XXXX EndSub  :  :  : Sub XXXX   ---ここで、押したボタンのいろんなプロパティを 変更したいのですが・・・変更の内容はどのボタンを押しても同じなので、ここでひとつにまとめたいんですが。たとえば、そのひとつとして、ボタンの画像を変えるとして・・・   Button(押したボタンの).Src = "sampleX.gif" End Sub </SCRIPT> </head> <body>   <input id="button1" type="button" name="button1" src="sample1.gif">   <input id="button2" type="button" name="button2" src="sample2.gif">   <input id="button3" type="button" name="button3" src="sample3.gif">  :  :  : つまり、押したボタンが何であったかを判別して、 維持することができないでしょうか? 素人です。よろしくお願いします。 ボタンは配列にできればしてもかまいません。 見当違いのスクリプトで、ほかにもっとよいスクリプトがあったら教えてください。

  • input type="image"でマウスクリック画像変更がうまくいかない

    input type="image" で表示した画像を変更したいのですがうまくいきません。 <form name="form1" action="" method="POST"> <input type="image" src="A.gif" name="A" onclick="ChangeImage();"> </form> <script language="javascript"> function ChangeImage(){ document.form1.A.src="B.gif" } </script> というコードをなんですが、ボタンをクリックしても何も起こりません。 アンカータグを使わずにinputで行いたいのですがどなたかご存じないでしょうか。よろしくお願いします。

    • ベストアンサー
    • HTML
  • input type="image"の押し方

    スカイマークの予約を自動でしたいのですが、 (1)日にち 行き先を指定する。 (2)便・料金を選択する。 (3)人数を入力する この入力手順なのですが、(3)の入力した後の「次へ」のボタンの押し方がわかりません ソースを見ると <input type="image" name="next" src="/web_rsv/ja/images/next_button.gif" onClick="nextDisplay(nform, nform.btn, this)" > このようになっています。 ご教授願います。 <input type="image" name="next" src="/web_rsv/ja/images/next_button.gif" onClick="nextDisplay(nform, nform.btn, this)" >

  • 画像ボタンでPOSTしたい

    <input type="submit" name="next" onclock="・・・"> を <input type="image" src="image/next.gif" onclick="・・・"> としたいのですが、type="image"がonclick="・・・"を利用できません。 aタグにしようとしたのですが、name="next"を飛ばすことができません。 困っているので対処方法を教えていただけるでしょうか? よろしくお願いします。

    • ベストアンサー
    • PHP
  • input type=imageでjavascript

    <input type="submit" name="next" onclock="・・・"> を <input type="image" src="image/next.gif" onclick="・・・"> としたいのですが、type="image"がonclick="・・・"を利用できません。 aタグにしようとしたのですが、 <input type="submit" name="next" onclock="・・・"> のようにして、name="next"(フラグ)を飛ばすことができません。 困っているので対処方法を教えていただけるでしょうか? よろしくお願いします。

    • ベストアンサー
    • PHP
  • formでPOSTするのと同じ動作をボタンとjavascriptで実現したいのですが

    <form name="myFORM" method="POST" action="xxx.php"> <input type="text" name="NAME"> <input type="submit" value="送信"> </form> 上記と同じ動作を <button onclick="fpost('tanaka','POST','xxx.php')">送信</button> とjavascriptで実現したいのですが可能でしょうか? 可能でしたらどのようなスクリプトになりますでしょうか? document.myFORM.submit();とかではなく、formタグを全く使わずPOSTしページ遷移したいのですが。 XMLHttpRequestとlocation.replace()とかでできるのでしょうか?? すみませんがよろしくお願い致します。

  • 複数ボタンのvalueを送れない

    ひとつのフォームで複数のボタンを使う方法を探していたら 次のような方法があるとのことでした。 <form method="post" name="MyForm"> <INPUT TYPE="BUTTON" VALUE="aaa" onClick="MyForm.action='hoge.cgi';MyForm.submit();"> <INPUT TYPE="BUTTON" VALUE="bbb" onClick="MyForm.action='hoge.cgi';MyForm.submit();"> </form> これで、ボタンによってVALUEを渡せるのかと思いきや、 飛んでいきませんでした・・・ 複数ボタンを用意して、ボタンによってその VALUE値を渡す方法がありませんでしょうか?

    • ベストアンサー
    • CGI
  • 選択したformの名前を取得する方法

    いくつもあるフォームからクリックされたフォーム名を参照する方法をどなたか教えて下さい。 下のスクリプトが間違っていたり(といいつつ、既に動かないので間違いです)、はじめから出来ないことであればご容赦下さい。 下のスクリプトはフォーム名の取得をするためだけにに書いているものです。 <SCRIPT language="JavaScript"> <!-- function move() {   for(i=0;i<30;i++) { var check="form"+i; if(check==document.forms[i].name) { return document.write("これは→"+check+"です");     }   } } --> <body> <FORM name="form0"><input type="image" src="back.gif" onclick="move()"></form> <FORM name="form1"><input type="image" src="back.gif" onclick="move()"></form> <FORM name="form2"><input type="image" src="back.gif" onclick="move()"></form> ・ ・ ・ <FORM name="form29"><input type="image" src="back.gif" onclick="move()"></form> </body>

  • Submitが使えないFormでのデータ送信

    次のようなFORMでSubmitがなくって画像クリックし、次の画面へ いく場合ですが、どういうコードを書けばいいのでしょうか? よろしくお願いします。 <FORM name=myForm action=http://abc.com/abc.cgi method=post> <TD> <INPUT type=hidden value=itemA name=mycmd> <INPUT type=hidden value=9999 name=myid> <INPUT type=image src="/img/image.gif" border=0 name=item> </TD> </FORM>