TOP /すぐに使えるJavaScript | タイマー |
---|
<style type=text/css><!-- .fieldset{ width:170;padding:5px; } .fieldset *{ font-size:10pt; } .button{ font-size: 8pt; } --></style> <script type="text/javascript"><!-- var sset,mset,tset,tobj; timesec=1000; function timerset(){ tobj=document.timerform; if(tobj.timerbutton.value == "Start"){ tm=tobj.timermin.value; ts=tobj.timersec.value; if(tm < 1 && ts < 1)return; if(ts.match(/[\D]/g) || tm.match(/[\D]/g)){ alert("整数を入力してください");return; } if(ts > 59){ tobj.timersec.value=59 alert("秒は59以内");return; } tobj.timermin.disabled = true; tobj.timersec.disabled = true; tobj.minup.disabled = true; tobj.mindown.disabled = true; tobj.secup.disabled = true; tobj.secdown.disabled = true; tobj.timerbutton.value = "Stop"; tobj.clearbutton.disabled = true; tset=setTimeout('timer()',1000); }else{ clearTimeout(tset); tobj.timerbutton.value = "Start"; tobj.clearbutton.disabled = false; } } function timer(){ tm=tobj.timermin.value; ts=tobj.timersec.value; if(tm < 1 && ts < 1){ alert("時間だよ〜〜"); //メッセージ tobj.clearbutton.disabled = false; timerclear(); return; } if(tm > 0 && ts < 1){ tobj.timermin.value--; tobj.timersec.value=59; }else tobj.timersec.value--; tset=setTimeout("timer()",1000); } function min(m){ tobj=document.timerform; if(m < 0 && tobj.timermin.value <= 0)return; tobj.timermin.value=parseInt(tobj.timermin.value)+m; if(timesec>100)timesec-=200; mset=setTimeout("min("+m+")",timesec); } function sec(s){ tobj=document.timerform; if(s < 0 && tobj.timersec.value<=0){ if(tobj.timermin.value <= 0)return; else{ tobj.timermin.value--; tobj.timersec.value=59; } }else if(s > 0 && tobj.timersec.value==59){ tobj.timermin.value++; tobj.timersec.value=0; }else tobj.timersec.value=parseInt(tobj.timersec.value)+s; if(timesec>100)timesec-=200; sset=setTimeout("sec("+s+")",timesec); } function timerclear(){ tobj=document.timerform; tobj.timermin.disabled = false; tobj.timersec.disabled = false; tobj.minup.disabled = false; tobj.mindown.disabled = false; tobj.secup.disabled = false; tobj.secdown.disabled = false; tobj.timerbutton.value = "Start"; }/*himajin.moo.jp*/ // --></script> <form name="timerform"> <fieldset class="fieldset"> <legend>タイマー</legend> <table><tr><td> <input type="text" value="0" name="timermin"size=5 maxlength=5 style="ime-mode:disabled;text-align:right">分 </td><td> <input type="text" value="0" name="timersec"size=5 maxlength=2 style="ime-mode:disabled;text-align:right">秒 </td><td> <input type="button" name="timerbutton"value="Start" onClick="timerset()"style="width:45"> </td></tr> <tr><td> <input type="button"class="button" name="minup"value="▲" onmousedown="min(1)"onmouseup="clearTimeout(mset);timesec=1000;" ><input type="button"class="button" name="mindown"value="▼" onmousedown="min(-1)"onmouseup="clearTimeout(mset);timesec=1000;"> </td><td> <input type="button"class="button" name="secup"value="▲" onmousedown="sec(1)"onmouseup="clearTimeout(sset);timesec=1000;" ><input type="button"class="button" name="secdown"value="▼" onmousedown="sec(-1)"onmouseup="clearTimeout(sset);timesec=1000;"> </td><td> <input type="button" name="clearbutton"value="reset" onClick="timerclear();this.form.reset();"style="width:45"> </td></tr></table> </fieldset> </form>