重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

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

宜しくお願い致します。

A 回答 (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に出力する方法は、大概のブラウザで正常に反映できると思います。

参考になれば幸いです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!