
Prosím o pomoc s Javascriptem...
Ahoj, mám problém s podmínkou IF... Mám odpočet, ale potřebuji aby, když bude zbývat např. (0d 1h 54m 45s) dny zmizely... Vše jde jak má, mizí dny, hodiny... Ale když použiju stejnou podmínku i na minuty, tak je chyba... :(
Díky předem
<SCRIPT LANGUAGE="JavaScript">
var timerID = null;
var timerRunning = false;
function showtime() {
today = new Date();
BigDay = new Date("august 20, 2015, 16:25:00")
msPerDay = 24 * 60 * 60 * 1000 ;
timeLeft = (BigDay.getTime() - today.getTime());
e_daysLeft = timeLeft / msPerDay;
daysLeft = Math.floor(e_daysLeft);
e_daysLeft = timeLeft / msPerDay;
daysLeft = Math.floor(e_daysLeft);
e_hrsLeft = (e_daysLeft - daysLeft)*24;
hrsLeft = Math.floor(e_hrsLeft);
minsLeft = Math.floor((e_hrsLeft - hrsLeft)*60);
hrsLeft = hrsLeft;
e_minsLeft = (e_hrsLeft - hrsLeft)*60;
secLeft = Math.floor(e_hrsLeft);
secLeft = Math.floor((e_minsLeft - minsLeft)*60);
secLeft = secLeft;
if(daysLeft==0){
Temp3=+hrsLeft+'h '+minsLeft+'m '+secLeft+'s';
}
else{
Temp3=+daysLeft+'d '+hrsLeft+'h '+minsLeft+'m '+secLeft+'s';
}
if(hrsLeft==0){
Temp3=+minsLeft+'m '+secLeft+'s';
}
else{
Temp3=+hrsLeft+'h '+minsLeft+'m '+secLeft+'s';
}
document.getElementById('vysledek').innerHTML = Temp3;
timerID = setTimeout("showtime()",1000);
timerRunning = true;
}
var timerID = null;
var timerRunning = false;
function stopclock () {
if(timerRunning)
clearTimeout(timerID);
timerRunning = false;
}
function stopClock() {
stopclock();
return;
}
function startclock () {
stopclock();
showtime();
}
</script>
<p align="center"><center>
<p><form name="frm" id="timer"><span id="vysledek" </span></form></p>
Jaká chyba?
Když přidám podmínku na minuty, celý odpočet mi zmizí... A když odpočet je na nule, tak se nezastaví a pokračuje dál. :(
Jak tam tu podmínku přidáváš? A nikdy tam nevidím, že bys tam měl kód na zastavení. Ono je to mimochodem celé dost špatně.
Já jsem jí smazal, byla udělána podobně jako tamty... Jsem začátečník, mohl by jste mi ukázat jak to má být ? byl bych moc vděčný. :)
Dělám něco, špatně, pořád mi to nejde :(
<!DOCTYPE html>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<head>
<title>Analog Clock</title>
<script type="text/javascript" src="script.js"></script>
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body onLoad="startclock()">
<SCRIPT>
var timerID = null;
var timerRunning = false;
function showTime() {
var today = new Date();
var BigDay = new Date("august 20, 2015, 16:25:00")
var msPerDay = 24 * 60 * 60 * 1000;
var timeLeft = (BigDay.getTime() - today.getTime());
if (timeLeft < 0) {
return;
}
var daysLeft = Math.floor(timeLeft / msPerDay);
timeLeft -= daysLeft * msPerDay;
var hrsLeft = Math.floor(timeLeft / msPerDay * 24);
timeLeft -= hrsLeft * msPerDay / 24;
var minsLeft = Math.floor(timeLeft / msPerDay * 24 * 60);
timeLeft -= minsLeft * msPerDay / 24 / 60;
var secLeft = Math.floor(timeLeft / 1000);
var display = '';
if (daysLeft > 0) {
display += daysLeft + ' d ';
}
if (hrsLeft > 0) {
display += hrsLeft + ' h ';
}
if (minsLeft > 0) {
display += minsLeft + ' m ';
}
if (secLeft > 0) {
display += secLeft + ' s ';
}
document.getElementById('vysledek').innerHTML = display;
timerID = setTimeout(showTime, 1000);
}
function stopClock() {
if (timerID) {
clearTimeout(timerID);
timerID = null;
}
}
function startClock() {
stopClock();
showTime();
}
var timerID = null;
var timerRunning = false;
function stopclock () {
if(timerRunning)
clearTimeout(timerID);
timerRunning = false;
}
function stopClock() {
stopclock();
return;
}
function startclock () {
stopclock();
showtime();
}
</script>
<p align="center"><center>
<p><form name="frm" id="timer"><span id="vysledek" </span></form></p>
</div>
</div>
</div>
</body>
</html>
Protože mícháš můj kód se zbytkem tvého starého.
jsem v koncích :D
<SCRIPT>
function showTime() {
var today = new Date();
var BigDay = new Date("august 30, 2015, 16:25:00")
var msPerDay = 24 * 60 * 60 * 1000;
var timeLeft = (BigDay.getTime() - today.getTime());
if (timeLeft < 0) {
return;
}
var daysLeft = Math.floor(timeLeft / msPerDay);
timeLeft -= daysLeft * msPerDay;
var hrsLeft = Math.floor(timeLeft / msPerDay * 24);
timeLeft -= hrsLeft * msPerDay / 24;
var minsLeft = Math.floor(timeLeft / msPerDay * 24 * 60);
timeLeft -= minsLeft * msPerDay / 24 / 60;
var secLeft = Math.floor(timeLeft / 1000);
var display = '';
if (daysLeft > 0) {
display += daysLeft + ' d ';
}
if (hrsLeft > 0) {
display += hrsLeft + ' h ';
}
if (minsLeft > 0) {
display += minsLeft + ' m ';
}
if (secLeft > 0) {
display += secLeft + ' s ';
}
document.getElementById('vysledek').innerHTML = display;
timerID = setTimeout(showTime, 1000);
}
function stopClock() {
if (timerID) {
clearTimeout(timerID);
timerID = null;
}
}
function startClock() {
stopClock();
showTime();
}
var timerID = null;
</script>
<p align="center"><center>
<p><form name="frm" id="timer"><span id="vysledek" </span></form></p>
Ja len že nemáš uzavretý <span> tag. A čo je prosím ťa <p align="center"><center> ? A možno som slepý ale kde je nejaký začiatok tých troch </div> ? Pekne ťa prosím, najprv sa poriadne nauč základy HTML a CSS potom choď na Javascript bude to tak lepšie, uvidíš :)
<!DOCTYPE html>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<head>
<title>Analog Clock</title>
<script type="text/javascript" src="script.js"></script>
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body onLoad="startclock()">
<div id="hodiny">
<div class="clock">
<h2>Lorem ipsum <br>dolor sit amet</h2>
<div class="analog-clock">
<svg width="140" height="125">
<circle id="clock-face" cx="70" cy="70" r="50" />
<line id="h-hand" x1="70" y1="70" x2="70" y2="45" />
<line id="m-hand" x1="70" y1="70" x2="70" y2="33" />
<line id="s-hand" x1="70" y1="70" x2="70" y2="31" />
<line id="s-tail" x1="70" y1="70" x2="70" y2="56" />
</svg><h3>20%</h3><h4>Lorem ipsum dolor sit amet</h4>
<hr align="center" color="#5d5d5d" id="cara">
<h5>Lorem! ipsum dolor sit</h5>
<img id="obrazek" src="hodiny.png"height="129" width="127">
<SCRIPT>
function showTime() {
var today = new Date();
var BigDay = new Date("august 30, 2015, 16:25:00")
var msPerDay = 24 * 60 * 60 * 1000;
var timeLeft = (BigDay.getTime() - today.getTime());
if (timeLeft < 0) {
return;
}
var daysLeft = Math.floor(timeLeft / msPerDay);
timeLeft -= daysLeft * msPerDay;
var hrsLeft = Math.floor(timeLeft / msPerDay * 24);
timeLeft -= hrsLeft * msPerDay / 24;
var minsLeft = Math.floor(timeLeft / msPerDay * 24 * 60);
timeLeft -= minsLeft * msPerDay / 24 / 60;
var secLeft = Math.floor(timeLeft / 1000);
var display = '';
if (daysLeft > 0) {
display += daysLeft + ' d ';
}
if (hrsLeft > 0) {
display += hrsLeft + ' h ';
}
if (minsLeft > 0) {
display += minsLeft + ' m ';
}
if (secLeft > 0) {
display += secLeft + ' s ';
}
document.getElementById('vysledek').innerHTML = display;
timerID = setTimeout(showTime, 1000);
}
function stopClock() {
if (timerID) {
clearTimeout(timerID);
timerID = null;
}
}
function startClock() {
stopClock();
showTime();
}
var timerID = null;
</script>
<p><form name="frm" id="timer"><span id="vysledek" </span></form></p>
</div>
</div>
</div>
</body>
</html>
Mockrát díky ! :)