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

現在タイマーの使い方が分からず下記の様に
秒数をカウントして行っています。
これを毎日15時と決まった時間に行うにはどうしたらいいのでしょうか??
JAVA触り初めてまだ一週間足らずなので…


<script type="text/javascript">
<!--
var i=600; /*自動更新秒数(常にループする秒数)*/
var j=0;/*ずらし秒数(最初に実行するまでの秒数)*/
var di=i;
i=j;/*一番最初の秒数*/
function AutoReLoad(){
if(!i) {
parent.frames("kuzusi1").location.href = "2-A.html"
parent.frames("kurikku1").location.href = "2-Aクリック.html"
i=di;
}
i--;
fun=Math.floor(i/60);
byou=i-(fun*60);
document.all("countID").innerHTML = "<b>" + fun +" </b>";
document.all("countID2").innerHTML = "<b>" + byou +" </b>";
setTimeout("AutoReLoad()",1000);/*自動更新秒数*/
}
//-->
</script>
</head>
<body onload="AutoReLoad()">
<center>
<font color="#ffffff">あと</font>
<span id="countID"></span>
<font color="#ffffff">分</font>
<span id="countID2"></span>
<font color="#ffffff">秒</font>
</center>

A 回答 (2件)

ちょっと、いきなりむずかしいか~。


じぶんでも、ちょっとやばい。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<title>じかん</title>
<body>
<p>
<input type="text" name="tm1" size="20">まで、<br>あと
<input type="text" name="tm1" size="4">日
<input type="text" name="tm1" size="4">時
<input type="text" name="tm1" size="4">分
<input type="text" name="tm1" size="4">秒
</p>
<p>
ばぶばぶぅ~の誕生日、
<input type="text" name="tm2" size="25">まで、<br>あと
<input type="text" name="tm2" size="4">日
<input type="text" name="tm2" size="4">時
<input type="text" name="tm2" size="4">分
<input type="text" name="tm2" size="4">秒
</p>

<script type="text/javascript">

//________________________

var CountDownGenerator = function (y, m, d, hh, mm, ss) {

 var t = new Date(y, m-1, d, hh || 0, mm || 0, ss || 0);
 var s = y + '年' + m + '月' + d + '日' +
  (undefined === hh ? '': hh + '時') +
  (undefined === mm ? '': mm + '分') +
  (undefined === ss ? '': ss + '秒');

 return function () {
  var sa = t - (new Date);
  sa = sa / 1000 |0;
  if (sa<0) return { end: true };
  var ss = sa % 60; sa = sa / 60 |0;
  var mm = sa % 60; sa = sa / 60 |0;
  var hh = sa % 24; sa = sa / 24 |0;
  var dd = sa;
  return {
   day: dd, hours: hh, minutus: mm, seconds:ss, str:s, end:false
  };
 };
 
}

//________________________

var Viewer = function (c, nm) {
 
 var txt = document.getElementsByName(nm);
 
 return function() {
  var time = c();
  if (time.end) return
  txt[0].value = time.str;
  txt[1].value = time.day;
  txt[2].value = time.hours;
  txt[3].value = time.minutus;
  txt[4].value = time.seconds;
  setTimeout( arguments.callee, 1000);
 }();
};

//________________________

Viewer(CountDownGenerator(2009, 7, 1, 15), 'tm1');

var tanjoubi = CountDownGenerator(2010, 1, 12, 20,23,15);
Viewer(tanjoubi, 'tm2');

</script>



setTimeout setIntervalで呼び出す関数を文字列で指定するっって・・・
window.setTimeout("fun1()", 1000);
は、
setTimeout(fun1, 1000);
に。
    • good
    • 0
この回答へのお礼

ありがとうございます!!なんとか解決に近づきました!!

お礼日時:2009/07/04 21:47

まず、javaではなくjavascriptですね。


javascriptで回答します。
時間を計算ではなく、時間取得してはどうでしょうか。
一応、Dateを使ってやってみたのを貼り付けてみます。
(参考URLを見ていると良いかもしれません。)

<head>
<script type="text/javascript">
<!--
function fun1(){
d = new Date();
s = d.getHours();
s = s + ":" + d.getMinutes();
s = s + ":" + d.getSeconds();
if (s == f1.t1.value){
alert("時間だ!");
}else{
document.all.d1.innerHTML = s;
}
window.setTimeout("fun1()", 1000);
}
-->
</script>
</head>
<body onload="fun1()">
<form name="f1">
セット時刻<input type="text" name="t1"><br>
現在時刻:<span id="d1"></span>
</form>
</body>
</html>

参考URL:http://www.tohoho-web.com/js/
    • good
    • 0
この回答へのお礼

ありがとうございます!!難しいですね…勉強します!!

お礼日時:2009/07/04 21:48

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