SCRIPT 질문 드립니다. 채택완료
</p>
<p><?php
$a1 = '2020,06,05,19,20,00';
?>
<SCRIPT language=JavaScript> </p>
<p>function getTime() { </p>
<p>now = new Date(); </p>
<p>dday = new Date(<?php echo $a1; ?>); // D-Day 날짜, 시간 정확하게 초단위기입.</p>
<p>days = (dday - now) / 1000 / 60 / 60 / 24; </p>
<p>daysRound = Math.floor(days); </p>
<p>hours = (dday - now) / 1000 / 60 / 60 - (24 * daysRound); </p>
<p>hoursRound = Math.floor(hours); </p>
<p>minutes = (dday - now) / 1000 /60 - (24 * 60 * daysRound) - (60 * hoursRound); </p>
<p>minutesRound = Math.floor(minutes); </p>
<p>seconds = (dday - now) / 1000 - (24 * 60 * 60 * daysRound) - (60 * 60 * hoursRound) - (60 * minutesRound); </p>
<p>secondsRound = Math.round(seconds); </p>
<p>document.getElementById("counter1").innerHTML = hoursRound; </p>
<p>document.getElementById("counter2").innerHTML = minutesRound; </p>
<p>document.getElementById("counter3").innerHTML = secondsRound; </p>
<p>newtime = window.setTimeout("getTime();", 1000); </p>
<p>} </p>
<p></SCRIPT></p>
<p>
카운트 해주는 SCRIPT 입니다.
계속 반복되는 시간 카운트로 만들고 싶은데요...
마지막 00 분 00초 가 된 이후에 다시 3분 짜리 카운트가 돌아가게 하려고 합니다.
(이건 무한반복입니다.)
00:00 될때 D-day 값을 매번 디비에 넣었다가 다시 불러오고..그래야 할까요?
근데 그건 아닌거 같기도 하고...그럴려면 해당 SCRIPT 가 있는 페이지를 새로고침하기 전에는
소용없을거 같거든요..
어떻게 하는게 좋을까요...조언좀 부탁드립니다. ㅜ
답변 2개
답변에 대한 댓글 2개
ps. 덕분에 저도 공부가 되었습니다.
댓글을 작성하려면 로그인이 필요합니다.
원래 소스를 최대한 활용해서
</strong></p>
<p> <SCRIPT language=JavaScript>
let now = new Date();
var dday = new Date();
dday.setSeconds(now.getSeconds()+5); // D-Day 날짜, 시간 정확하게 초단위기입.
function getTime() {
now = new Date();
days = (dday - now) / 1000 / 60 / 60 / 24;
daysRound = Math.floor(days);
hours = (dday - now) / 1000 / 60 / 60 - (24 * daysRound);
hoursRound = Math.floor(hours);
minutes = (dday - now) / 1000 / 60 - (24 * 60 * daysRound) - (60 * hoursRound);
minutesRound = Math.floor(minutes);
seconds = (dday - now) / 1000 - (24 * 60 * 60 * daysRound) - (60 * 60 * hoursRound) - (60 * minutesRound);
secondsRound = Math.ceil(seconds);
document.getElementById("counter1").innerHTML = hoursRound;
document.getElementById("counter2").innerHTML = minutesRound;
document.getElementById("counter3").innerHTML = secondsRound;
if( (minutesRound == '0') && (secondsRound == '0') ){
dday.setSeconds(now.getSeconds()+5);
console.log(dday);
}
}
var myVar = setInterval(getTime, 1000);
</SCRIPT></p>
<p><strong>
답변에 대한 댓글 1개
작성해 주신것을 유심히 보았는데요..
해당 SCRIPT 가 원소스도 마찬가지구..
카운트를 하는데...5..4..3..2..1..다음에 0 아니구 60 이 표기 되네요.
그러다보니 취미생활님이 작성해주신 if 구문의 secondsRound == '0' 을 지나치는듯 합니다. ㅜㅜ
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
감사합니다. ^^