ロジックの組み方について

このQ&Aのポイント
  • 広告バナーの複数表示方法について
  • 具体的なロジックの組み直し方
  • PC用広告を複数表示する方法
回答を見る
  • ベストアンサー

ロジックの組み方について

連日ですが宜しく御願い致します。 以下のPGMでは、広告バナーが「一箇所」だけ画面上に表示されるわけですが、 此れを、「同一画面上に複数表示したい」場合、どう以下のロジックを組み直せばよいのでしょうか? ※つまり「PC用広告2」や「PC用広告3」といった複数の表示をさせたいのです。 ********************************************************************************** <HTML><HEAD><TITLE>***</TITLE> <script type="text/javascript" src="banner.js"></script></HEAD> <body onLoad="timerID=setTimeout('imgchange()',1000)"> <CENTER> <form name="fm"> <A HREF="javascript:mnuopen()"><img src="02.jpg" name="anime" alt=" PC用広告1" border=0></A></FORM></CENTER></body></HTML> *********************************************************************************** よろしくお願いいたします。

  • HTML
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • Miki3548
  • ベストアンサー率24% (22/89)
回答No.1

こんにちは。 最初の質問から拝見させて頂いております。 とても 努力されているのだと思い 私自信もがんばらねばと思っております。 質問の回答ですが、 まず、 onLoad="timerID=setTimeout('imgchange()',1000)" の関数の意味を理解していますでしょうか? タイムアウトになるまでimgchange()関数を呼び出す ですよね? なので imgchange()関数中に バナー分の処理を加えてあげればよいのではないでしょうか? imgchange関数もですね。 ただ、これば一番簡単な方法で スマートなコーディングではないかもしれませんね。 やり方はいろいろあります。 プログラムって ソースの1行1行を 本片手に解析して 苦労しながらおぼえていくものですね。 苦労しながら 出来るだけスマートなコーディングが 出来るようになりたいですね。 納期との格闘もあるでしょうから お互いがんばりましょう。

wowwow2003
質問者

お礼

Miki3548様 ご教授有難う御座います。 最初の質問からご存知との事、・・・レベルが判ってしまいお恥ずかしい・・・ でも、お会いしたことも無い方々に親切にされ、ここまでやってこられました事は、本当に有難い事で御座います。脳細胞がかなり衰えた”年齢”ですが、頑張りたいと思います。 このサイト企画者の方にも、良いサイトを有難う御座います。 上記アドバイスを試みていますが、上手くいきません。もう少し頑張りますので、取り急ぎ、感謝の辞を拝させて頂きました。それでは、また、後程。 吉報をご期待下さい。 有難う御座いました。 <追伸> 是非、サイト上で、貴殿の技術力を公開していただきたいと切望致します。PGM構築初心者としては、「回答を提示した上で、そこから考えさせる」この方法は、後々、聞いただけの時とは違い、体得できますので、本当に心強いです。

関連するQ&A

  • JavaScriptのロジック?

    <HTML> <HEAD> <TITLE>JavaScript</TITLE> <SCRIPT type="text/javascript"> <!-- /* 同じ値を二重表示 */ function funDouble(){ alert( document.SampleForm.nameOne.value ); document.SampleForm.nameTwe.value = document.SampleForm.nameOne.value + document.SampleForm.nameOne.value; alert(document.SampleForm.nameTwe.value); } // --> </SCRIPT> </HEAD> <BODY> <form name="SampleForm" method="POST"> <table align="center"> <TR> <TD>OnClick機能 : <Input type="text" name="nameOne" value="Ok"><Input type="submit" value="押して!" onclick="funDouble()" ></TD> <TD>| 結果 => | </TD> <TD> OnChange後 同じ値を2重表示 ; <Input type="text" name="nameTwe" value="123456"></TD> </TR> </table> </form> </BODY> </HTML>

  • JavascriptのtimerIDの意味

    いつもお世話になっております。 現在、Javascriptの勉強をしており、その過程でカウントダウンタイマーを作成しています。 テキスト通りにsetTimeout()メソッドなどを使用しているのですが、timerIDの意味が理解できず困っております。 タイマーを識別するID番号ということはなんとなく理解できるのですが、下記コードのelse if (timerID)やtimerID=0とは何を意味しているのでしょうか。 if文の条件がtimerIDとはどういうことなのか。 timerIDの値を0にする必要性は何なのか。 教えてください。 <doctype! html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>Javascript</title> <script type="text/javascript"> window.onload = init; function init(){ document.form1.start.onclick = start; document.form1.reset.onclick = stop; } var timerID; function start(){ count = parseInt(document.form1.time.value); if (count<=0){ count = 0; return; } else if (timerID){ count--; } document.form1.time.value=count; if (count==0){ clearTimeout(timerID); timerID = 0; alert("時間です"); return; } timerID = setTimeout("start()", 1000); } function stop(){ document.form1.time.value=0; if(timerID){ clearTimeout(timerID); timerID=0; } } </script> </head> <body> <h1>カウントダウンタイマー</h1> <form name="form1"> 時間<input name="time" type="text" size="3">秒<br> <input name="start" type="button" value="スタート"> <input name="reset" type="button" value="リセット"> </form> <script type="text/javascript"> </script> </body> </html>

  • 外部ファイルにするとテキストが書き込めない

    こんにちは、javascript初心者です。 HTMLのtextarea内のテキストを変えたいのですが、HTMLにJSを埋め込むと動作するのですが、外部JSファイル読み込みだとなぜか何も表示されません。 なぜでしょうか。原因のわかる方、説明をどうかよろしくお願い致します。 ●HTML <head> <script src="test.js" type="text/javascript"></script> </head> <body> <form name="form1"> <textarea name="message" id="msg" rows="5" cols ="50"></textarea> </form> </body> ●JS window.onload = message(); function message(){ alert("hello");              //←これはちゃんと動作します。 document.getElementById("msg").value="hello"; //← 動作せず。 document.form1.message.value="hello"; //← これも上と同じく片方ずつ試しましたが、ダメでした。 }

  • JavaScriptのタイマーについて

    JavaScriptのタイマーについて上手く動作しないので質問させて頂きます。 <仕様>  3秒後に「aaa」のメッセージを表示させる。  5秒後に「aaa」のメッセージを表示させる。 <現在の状況>  3秒後に「aaa」のメッセージを表示し、その後は応答なし。 <ソース> 以下を参照ください。何が悪いのでしょうか? <HTML> <HEAD> <SCRIPT Language="JavaScript"> <!-- timerID = 10; function func() { alert("aaa"); } function init() { timerID = setTimeout("func()", 3000); timerID = setTimeout("func()", 5000); } // --> </SCRIPT> </HEAD> <BODY onload="init()"> </BODY> </HTML>

  • スライドショーなんですが・・・。

    スライドショーで 下記のようなHTMLなのですが 一回停止をクリックしてから 再開をクリックすると 一枚目の写真に戻るようになっています。 停止したところから再開するにはどう直せばよいのですか? よろしくお願いします <HTML> <HEAD> <TITLE>スライド</TITLE> </HEAD> <SCRIPT LANGUAGE="JavaScript"> <!-- var num = 1; var flag = 1; var Fm = new Array(5); Fm[0]=""; Fm[1]=" 一枚目"; Fm[2]=" 二枚目"; Fm[3]=" 三枚目"; Fm[4]=" 四枚目"; Fm[5]=" 五枚目"; function timer() { if(document.img.complete) { document.img.filters.blendTrans.Apply(); document.img.src = "photo" + num + ".JPG"; document.img.filters.blendTrans.Play(); document.Fmess.fmess.value = Fm[num]; num++; if(num >5) num = 1; } if(flag == 1) { TimerID = setTimeout("timer()", 5000); } } function crl() { clearTimeout(TimerID); flag = 0; } function restart() { TimerID = setTimeout("timer()", 5000); num = 1; flag = 1; } //--> </SCRIPT> <BODY BGCOLOR="#000000" TEXT="#FFFFFF" onLoad="setTimeout('timer()', 6000)"> <CENTER> <IMG NAME="img" SRC="写真01.JPG" style="filter:blendTrans(duration=1)"> <FORM NAME="Fmess"> <INPUT TYPE="text" NAME="fmess" VALUE=" 説明 " SIZE=50> </FORM> <A HREF="JavaScript:crl()">[停止]</A>    <A HREF="JavaScript:restart()">[再開]</A>    <A HREF="JavaScript:window.close()">[終了]</A> </CENTER> <BR> </BODY> </HTML>

  • オブジェクトが存在しない

    というエラーが次のhtmlファイルをブラウザで表示させようとするとでます if(document.form0.title!=null) で判断しているだけでだめみたいです そしたらdocument.form0.titleが存在するかどうかをエラーなしで判断させる方法はあるのでしょうか? <HTML> <HEAD> <script type='text/javascript'> <!-- function FormFocus() {  if(document.form0.title!=null)document.form0.title.focus(); } // --> </script> </HEAD> <body onload='javascript:FormFocus()'> <form name='form0'></form> </BODY> </HTML>

  • テキストボックスにスクロールする文字列を表示する。

    テキストボックスにスクロールする文字列を表示する方法を知りました。^^ これはできたのですが、同じページで、「★メッセージ1」の他に 「別の表示」をさせたいのですがどうしたらいいんでしょうか? 例えば、「★メッセージ2」。など  <HTML> <HEAD> <TITLE></TITLE> <SCRIPT language="JavaScript"> <!-- msg="★メッセージ1     "; function scroll(){ msg=msg.substring(1,msg.length)+msg.substring(0,1); document.myform.mytext.value=msg; setTimeout("scroll()",300); } //--> </SCRIPT> </HEAD> <BODY onLoad="scroll()"> <CENTER> <FORM name="myform"> <INPUT name="mytext" size="20"> </FORM> </CENTER> </BODY> </HTML>

  • 画像が表示されないエラー

    ローカルで実行するとうまくいくのですが、サーバーにアップしてから見ると画像が表示されません。 おそらく、画像がPCにうまくアップされないのだと思います。 対策を教えてください。 <HTML><HEAD><TITLE>定時間ごとにランダムで画像を入れ替える</TITLE> <SCRIPT Language="JavaScript"> <!-- // 簡単JavaScript作成 // Imageの先読み function init(){ irekae1rdata = new Image() ; irekae2rdata = new Image() ; irekae3rdata = new Image() ; irekae1rdata.src = "pic/ansinkun1.gif" ; irekae2rdata.src = "pic/ansinkun2.gif" ; irekae3rdata.src = "pic/ansinkun3.gif" ; timerID = 0 ; timerID = setTimeout("irekae()",1000) ; } //一定時間ごとに画像を入れ替えてアニメーション function irekae() { switch(Math.floor(Math.random()*3)+1){ case 1: { document.irekaerimg.src=irekae1rdata.src ; timerID = setTimeout("irekae()",3*1000) ; break ; } case 2: { document.irekaerimg.src=irekae2rdata.src ; timerID = setTimeout("irekae()",3*1000) ; break ; } case 3: { document.irekaerimg.src=irekae3rdata.src ; timerID = setTimeout("irekae()",3*1000) ; break ; } } } // --> </SCRIPT> </HEAD> <BODY onload="init();"> <IMG SRC="./pic/ansinkun1.gif" NAME="irekaerimg" border="0"> </BODY></HTML>

  • セレクトボックスでの結果で画像を変化させるモノを同ページに複数個表示する

    セレクトボックスの結果によって画像を変化させるものを作ったのですが、これが一つのみだと動作したのですが、"同じ条件"で複数個おく方法が分かりません。 ちなみに試したものです。(一つ目すら動作しませんでした。) <HTML> <HEAD> <TITLE></TITLE> <SCRIPT language="JavaScript"> <!-- function changeImage(){ var imgnum = document.forms['myform'].elements['imgselect'].selectedIndex; document.images['myimg'].src = 'test01.jpg'; if(imgnum==0){ document.myimg.src="test01.jpg"; }else if(imgnum==1){ document.myimg.src="test02.jpg"; } } //--> </SCRIPT> </HEAD> <BODY> <CENTER> <!--1つめ--> <IMG src="test.jpg" name="myimg" border=0> <FORM name="myform"> <SELECT name="imgselect" onChange="changeImage(this.options[this.selectedIndex].value)"> <OPTION>イメージ1 <OPTION>イメージ2 </SELECT> </FORM> <!--2つめここから下を追加したことで動作しなくなりました--> <IMG src="test.jpg" name="myimg" border=0> <FORM name="myform"> <SELECT name="imgselect" onChange="changeImage(this.options[this.selectedIndex].value)"> <OPTION>イメージ1 <OPTION>イメージ2 </SELECT> </FORM> <!--ここまで--> </CENTER> </BODY> </HTML> *全く同じ条件のものを複数個並べたいのですが、ただ、「form」 と「画像」の項目を増やすだけではだめなのでしょうか? 自分でもこれじゃまずいんじゃない?とは何となく思うのですが、細かな原因が分かりません。かなりの初心者です。どうすればうまくいくのでしょうか?

  • 次のJavaScript

    <HTML> <HEAD> ・・・・・・・・・・・・・・・・ <script type='text/javascript'> <!-- function FormFocus() { document.form0.title.focus(); <-----error } // --> </script> </HEAD> <body onload='FormFocus()'> <form name='form0' method='post' action='http://hpcgi.nifty.com/xxxx/mypage.cgi#form'> ・・・・・・・・・・・・・・・・ </body> </HTML> がerrorとしているところでエラーになります 何か間違いあれば教えてください