Autorius Tema: Keletas countdown'ų vienu metu  (Skaityta 1448 kartus)

Neprisijungęs Haris

  • Dalyvis
  • **
  • Įrašai: 833
  • Karma: +56/-0
    • Žiūrėti profilį
    • www.RubikoKubas.Lt
Keletas countdown'ų vienu metu
« Įrašytas: 2012-05-17 20:09:45 pm »
Pametėkit kokią idėją kaip gražiai susukti kelis countdown'us su javascriptu vienu metu.

Turiu pasidaręs šitiek:
Kodas: (JavaScript) [Pasirinkti]
$(document).ready(function(){
start();
function component(x, v) {
    return Math.floor(x / v);
}
function start(){
createtimer('.id-1 .liko');
createtimer('.id-2 .liko');
createtimer('.id-3 .liko');
createtimer('.id-4 .liko');
createtimer('.id-5 .liko');
}
function createtimer (selector) {
var el = $(selector);
time = el.attr('lang');
chtime(time,el);
}
function chtime(timestamp,selector) {
var tmpst = timestamp;
var timestamp = parseInt(timestamp)*1000 - Date.now();
timestamp /= 1000;
timestamp--;
    var days    = component(timestamp, 24 * 60 * 60),
        hours   = component(timestamp,      60 * 60) % 24,
        minutes = component(timestamp,           60) % 60,
        seconds = component(timestamp,            1) % 60;
    $(selector).html(days + " days, " + hours + ":" + minutes + ":" + seconds);
}
// Nuemus () po start , viskas pradejo veikti :D
setInterval(start, 1000);
});

Mano variantu visi laikai nueina i neigiamas reiksmes :/

Patarkite ką daryti šiuo atveju. :)

EDIT: Šiek tiek pataisiau. Dabar likusi laika rodo tiksliai, bet jis nemazeja... :/

Heh... :D Susitvarkiau , dviem skliausteliais per daug buvo ;D
Parašytas kodas 100% veikia.
Jei turit minčių, kaip patobulinti šitą reikalą, tai pasidalinkite, nes manau čia ne pats geriausiais variantas :)
« Paskutinį kartą keitė: 2012-05-17 20:20:20 pm sukūrė Haris »

Neprisijungęs Modestas Vaitkevičius

  • Dalyvis
  • **
  • Įrašai: 2007
  • Karma: +57/-16
    • Žiūrėti profilį
    • Apie mane
Ats: Keletas countdown'ų vienu metu
« Atsakymas #1 Įrašytas: 2012-05-17 20:25:52 pm »
Nu va, matai kaip gerai, parašai ir susitvarkai :)

Nors man taip būna labai dažnai... :D

Neprisijungęs Haris

  • Dalyvis
  • **
  • Įrašai: 833
  • Karma: +56/-0
    • Žiūrėti profilį
    • www.RubikoKubas.Lt
Ats: Keletas countdown'ų vienu metu
« Atsakymas #2 Įrašytas: 2012-05-17 20:32:02 pm »
Man visą laiką taip būna ;D Panaršytum po mano forumo post'us, tai daug tokių rastum :D

Kodas: (html) [Pasirinkti]
<!DOCTYPE HTML>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<link type="text/css" rel="stylesheet" href="style.css" />
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script>
google.load("jquery", "1.7.1");
</script>
<script>
$(document).ready(function(){
start();
function component(x, v) {
    return Math.floor(x / v);
}
function start(){
createtimer('.id-1 .liko');
createtimer('.id-2 .liko');
createtimer('.id-3 .liko');
createtimer('.id-4 .liko');
createtimer('.id-5 .liko');
}
function createtimer (selector) {
var el = $(selector);
time = el.attr('lang');
chtime(time,el);
}
function chtime(timestamp,selector) {
var tmpst = timestamp;
var timestamp = parseInt(timestamp)*1000 - Date.now();
timestamp /= 1000;
timestamp--;
    var days    = component(timestamp, 24 * 60 * 60),
        hours   = component(timestamp,      60 * 60) % 24,
        minutes = component(timestamp,           60) % 60,
        seconds = component(timestamp,            1) % 60;
    $(selector).html(days   " days, "   hours   ":"   minutes   ":"   seconds);
}
setInterval(start, 1000);
});
</script>
<title>CountDowns</title>
</head>
<body>
<ul>>
<li class="id-1">
Liko laiko iki ko nors <span class='liko' lang='1337418000'></span>
<li>
<li class="id-2">
Liko laiko iki ko nors <span class='liko' lang='1337419000'></span>
<li>
<li class="id-3">
Liko laiko iki ko nors <span class='liko' lang='1337428000'></span>
<li>
<li class="id-4">
Liko laiko iki ko nors <span class='liko' lang='1337618000'></span>
<li>
<li class="id-5">
Liko laiko iki ko nors <span class='liko' lang='1337458000'></span>
<li>
</ul>
</body>
</html>

Pilnas veikiantis pavyzdys. Gal turite kokių pastabų? :)
« Paskutinį kartą keitė: 2012-05-17 22:17:54 pm sukūrė Haris »

Neprisijungęs Lukas

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7431
  • Karma: +232/-15
    • Žiūrėti profilį
Ats: Keletas countdown'ų vienu metu
« Atsakymas #3 Įrašytas: 2012-05-18 16:29:46 pm »
pastebejimas toks:

<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script>
google.load("jquery", "1.7.1");
</script>
kam tu krauni jsapi biblioteka, kad galetum uzkrauti jquery biblioteka?:D kodel ne tiesiog:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Gerda Photography
Serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Manualai.lt Forumas

Ats: Keletas countdown'ų vienu metu
« Atsakymas #3 Įrašytas: 2012-05-18 16:29:46 pm »

Neprisijungęs Haris

  • Dalyvis
  • **
  • Įrašai: 833
  • Karma: +56/-0
    • Žiūrėti profilį
    • www.RubikoKubas.Lt
Ats: Keletas countdown'ų vienu metu
« Atsakymas #4 Įrašytas: 2012-05-18 16:54:44 pm »
Ai, nu.. tiksliai! Čia geras pastebėjimas :)

Manualai.lt Forumas

Ats: Keletas countdown'ų vienu metu
« Atsakymas #4 Įrašytas: 2012-05-18 16:54:44 pm »