[mw_shl_code=css, true] <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Elektronické hodiny</title> </head> <typ stylu="text/css"> *{margin: 0; polstrování: 0; Styl seznamu: žádný} tělo{barva pozadí: #D7154A; rodina fontů: 'Microsoft Yahei'} .demo{šířka: 330px; Výška: 100px; Rámeček: 3px pevný #fff; Rezerva: 200px auto; Výška řádku: 100px; zarovnání textu: střed; barva: #fff; Velikost písma: 50px; tloušťka písma: 600; pozice: relativní; přetečení: skryté; } .size{width: 100px; Výška: 100px; Float: vlevo; } .pointer{šířka: 10px; Výška: 100px; Float: vlevo; } .bottom{šířka: 200px; Výška: 100px; zarovnání textu: střed; Rozdíl: 0 auto; Barva: #fff}
#next-h{pozice: absolutní; šířka: 100px; Výška: 100px; vlevo: 0px; top: 100px; } #next-m {pozice: absolutní; šířka: 100px; Výška: 100px; vlevo: 110px; top: 100px; } #next-s{pozice: absolutní; šířka: 100px; Výška: 100px; vlevo: 220 px; top: 100px; }
</style> <body> <div class="demo"> <div id="hodina" třída="velikost"></div> <div id="next-h"></div> <div class="pointer">:</div> <div id="minuta" class="size"></div> <div id="next-m"></div> <div class="pointer">:</div> <div id="druhá" třída="velikost"></div> <div id="next-s"></div> </div> <div class="bottom"> Forum Wusoft</div> </body> <typ skriptu="text/javascript"> Získejte aktuální čas var date=new date(); var hour=date.getHours(); var minute=date.getMinutes(); var second=date.getSeconds();
Získejte DOM času, který se zobrazuje var ohour=document.getElementById("hour"); var ominute=document.getElementById("minute"); var osecond=document.getElementById("second");
Inicializace času funkce init(){ ohour.innerHTML=fill(hour); ominute.innerHTML=fill(minute); osecond.innerHTML=fill(second); } init();
Získejte skrytý DOM, tady je DOM, který se ukáže příště var nhour=document.getElementById("next-h"); var nminute=document.getElementById("next-m"); var nsecond=document.getElementById("next-s");
Časovač ovládá změnu času setInterval(function(){ if(second==60){ druhý=0; Přičtěte 1 k počtu minutových rukou if(minute==60){ minuta=0; Hodina +1 if(hour==24){ hodina=0; } Zobrazeno v krabici stínové skrýše nhour.innerHTML=fill(hour); nhour++; Nazvěte plovoucí funkci pohyb (nhodina, hodina); Krabici je také potřeba resetovat nhour.style.top="100px"; }
Zobrazeno v krabici stínové skrýše nminute.innerHTML=fill(minute); minuta++; Nazvěte plovoucí funkci pohyb (nminute, ominute); Krabici je také potřeba resetovat nminute.style.top="100px"; }else{ druhé++; } nsecond.innerHTML=fill(second); }, 1000)
V další vteřině se dom pohne vzhůru Parametr 1: Krabice, kterou máme přesunout Parametr 2: Rámeček, který konečně ukazuje čas funkce move(obj,show){ var timer=setInterval(function(){ obj.style.top=getStyle(obj,"top")-1+'px'; if(getStyle(obj,"top")<=0){ clearInterval (časovač); show.innerHTML=obj.innerHTML; } }, 1) }
Změní se doba poslechu? var old=0; setInterval(function(){ if(old!=nsecond.innerHTML){ pohyb(nsekunda,sekunda); nsecond.style.top="100px"; old=nsecond.innerHTML; } }, 1)
Pomocná funkce pro získání hodnot atributů function getStyle(obj,style){ var attr=window.getComputedStyle ? window.getComputedStyle(obj,null)[style]:obj.currentStyle[style]; Odstraňte jednotkový px attr=attr.slice(0, -2); return parseInt(attr); }
Pokud je délka doby 1 bit, přidá se před ni 0 funkce fill(str){ var s=str.toString(); if(s.length==1){ s='0'+s; return s; }else{ zpět sílu; } }
</script> [/</html>mw_shl_code]
|