Anonymní profil smokeflypaper – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil smokeflypaper – Programujte.comAnonymní profil smokeflypaper – Programujte.com

 

Příspěvky odeslané z IP adresy 193.165.2.–

Anonymní uživatel
HTML / XHTML › počítadlo věku - countup
27. 4. 2009   #100104

To plasmo :

diky za gratulaci a diky za namet. V ramci dnu to jiz funguje perfektne...

Uz jen doladit mesice a pak taky aby to bylo i dlouhodobe funkcni jelikoz to ted s datumem starsim 2 roky uz pocita jen na ty roky..


Ale jeste jednou velke diky za namahu pomohlo mi to.. ;)

smokeflypaper
HTML / XHTML › počítadlo věku - countup
27. 4. 2009   #100100

Ahoj, nevím si s tím rady a tady tomu jistě někdo rozumí..
(pokoušel jsem se to upravit ale prostě na to nemám) ani jsem nenašel přesně to co potřebuji.

Chtěl bych počítadlo věku našeho právě narozeného syna. viz http://viktor.snadno.eu/ (nějaký pokus tam již je ale nejsem programátor a z toho co jsem našel jsem to prostě líp nedokázal.. :)


Mělo by to správně skloňovat tzn.:
(1 den, 2 dny, 3 dny, 4 dny, 5 dnů, 6 dnů atd...)
u týdnů měsíců a roků taktéž.

Zároveň se script chová tak že když je výsledný čas delší než dva roky tak už to počítá jen na roky..

Rád bych aby to ukazovalo aktuální čas až po úroveň dnů např.: 2 roky 4 měsíce 3 týdny 6 dnů (a ne třeba 28 měsíců)

Předem děkuji za reakce...

Zdrojový soubor je zde :

Kód:

<HTML>
<head>

<script type="text/javascript">
<!--
function getAge(birth)
{

var now = new Date();

aSecond = 1000;
aMinute = aSecond * 60;
aHour = aMinute * 60;
aDay = aHour * 24;
aWeek = aDay * 7;
aMonth = aDay * 30;

var age = now.getTime() - birth.getTime();

if (age < 0) {
return "not born yet"
}

years = (new Date(now.getTime() - aMonth* (birth.getMonth()) )).getFullYear()
- (new Date(birth.getTime() - aMonth* (birth.getMonth()) )).getFullYear();

offsetNow = (new Date(now.getTime() - aDay* (birth.getDate() -1) ));
offsetBirth = (new Date(birth.getTime() - aDay* (birth.getDate() -1) ));
if(years > 1){
months = years*12 + ( offsetNow.getMonth() - offsetBirth.getMonth()) ;
}else{
months = (now.getFullYear() - birth.getFullYear())*12 + ( offsetNow.getMonth() - offsetBirth.getMonth()) ;
}
agestr="";

if (months < 24){
weeks = Math.floor(age / aWeek);
age -= weeks * aWeek;
days = Math.floor(age / aDay);

if(weeks > 0){
if(weeks == 1){
agestr = agestr + weeks + " týden ";
}else if(weeks < 5){
agestr = agestr + weeks + " týdny ";
}else if(weeks <9){
agestr = agestr + weeks + " týdnů ";
}else{
agestr = agestr + months ;

if(now.getDate() - birth.getDate() > 10){
agestr = agestr + " ½ ";
}
agestr = agestr + " měsíců ";

}
}

if(days > 0){

if(weeks < 9){
if(weeks > 0){
agestr = agestr + " a ";
}
if(days == 1){
agestr = agestr + days + " den ";
}else{
agestr = agestr + days + " dnů ";
}
}
}
}else{
agestr = agestr + years;
if (months%12 > 5 && years<14){
agestr = agestr + " ½ ";
}
agestr = agestr + " let ";
}

return agestr;
}
// -->
</script>
</head>


<BODY>
<CENTER>
<BR>
<script type="text/javascript">

document.write("<font size=2> právě uběhlo " + getAge(new Date("april 17, 2009 ")) + "</font>");
</script>
</CENTER>
</body>
</html>

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032021 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý