ギリギリ行けるお一人様のライン

ページを開いた瞬間から残り時間を表示指定のですが、どうすればいいのでしょうか?

時間は37分です。

また、input text のようなボックス内に表示する以外を教えてさい。

A 回答 (2件)

こんな感じで・・・



<script>
window.onload=function(){
var m=37;
var endTime=new Date();
endTime.setMinutes(endTime.getMinutes()+m);
var timerId=setInterval(
function(){
var pastTime=Math.floor((endTime-new Date())/1000);
var timeStr=('0'+Math.floor(pastTime/60).toString()).substr(-2)+":"+('0'+(pastTime%60).toString()).substr(-2);
if(pastTime<=0){
clearInterval(timerId);
timeStr="00:00";
}
document.getElementById("timer").innerHTML=timeStr;
},100);
}

</script>
<div id="timer"></div>
    • good
    • 0

ごく簡単な参考例です。


setTimeoutで1秒毎にカウンタを減らしていますので、多少誤差が累積する可能性があります。
date.getTime()などで時間差を求めてあげるほうが、より正確といえるかも。

<html>
<script>
var tim;
window.onload = function(){tim=37*60 + 0; count();}
function count() {
if (tim){setTimeout('count()',1000);}
var st = '0' + tim % 60;
st = ':' + st.substring(st.length-2);
st = '0' + Math.floor(tim/60) + st;
document.getElementById('hoge').innerHTML='残り '+ st.substring(st.length-5);
tim--;
}
</script>
<body>
<div id="hoge"></div>
</body>
</html>
    • good
    • 0

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


おすすめ情報