• ベストアンサー

カウントアップ

JavaScriptで変数のカウントアップをしたいのですが、よくわかりません。 条件は1秒に1ずつカウントアップする。 35の倍数のときは30秒数値が変わらない。 カウントアップは100まで(101以上はアップしない) ブラウザーで見たときは”○○パーセント完了”と表示したい。 100までアップしたら5秒後にウィンドウを閉じる。 以上の条件が可能であれば、どのようなソースを書けば良いかできれば教えていただきたいのですが・・・ 宜しくお願い致します。

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

  • ベストアンサー
noname#199778
noname#199778
回答No.1

こんな感じではいかがでしょうか。 <html> <head> <title>カウント</title> <script type="text/javascript"><!-- n=0; function timer(){ if (document.getElementById){ document.getElementById("cnt").innerHTML=n+"パーセント完了";} // DHTML的な出力方法 document.f0.b0.value=n+"パーセント完了"; // formへの出力 window.status=n+"パーセント完了"; // ステータスバーへの出力 if (n/35==Math.round(n/35) && n!=0){ setTimeout("timer()",30000);} else if (n==100){ setTimeout("window.close()",5000);} else { setTimeout("timer()",1000);} n++; } //--></script> </head> <body onload="timer()"> <p>現在:<span id="cnt"></span><!-- DHTML的な出力方法の出力部 --></p> <form name="f0"> <input type="text" name="b0"><!-- formへの出力部 --> </form> </body> </html> 画面表示に関しては、一応3通り用意してみました。 DHTML的な出力方法は、IE5.x以降かNerscape 6以降でないと動かないと思います。 ステータスバーやformに出力する方法は、大概のブラウザで正常に反映できると思います。 参考になれば幸いです。

関連するQ&A