Autor Zpráva
screpyKOKO
Profil *
ahoj,zkouším s flash něco a nějak mě to nejde:D
chci udělat odpočet času do 1.8.2001 v 00:00 hod,a poté až to ten čas upline,tak aby se přesměroval na stránku kterou bych tam zadal..
začal jsem s odpočet času,něco jsem našel,a pokusil se ho upravit,ale nějak to nejde...

datum = new Date();
den = 24 -datum.getDay();
hodiny = 60 -datum.getHours();
minuty = 60-datum.getMinutes();
sekundy = 60-datum.getSeconds();
msek = 1000-datum.getMilliseconds();
if (datum.getDay() < 25) {
	den = datum.getDay() -25;
	hodiny = datum.getHours();
	minuty = datum.getMinutes();
	sekundy = datum.getSeconds();
	msek = datum.getMilliseconds();
}

celej tej script je blbě,takže bych asi měl začít odznova,ale nevím vůbec kde začít:d doufám že pomůžete:) díky
PS: ono by stačilo v pohodě jen ten odpočet času do toho data,to přesměrování bych nějak zařídil:) nejspíš manualně
flz
Profil
kľudne môžeš použiť moje odpočítavadlo

Ukážka

Zdroják
screpyKOKO
Profil *
Co používáš za program?já macromedia flash 8 a nejde mě ten soubor otevřít:d
flz
Profil
no ja mám CS5 a uložiť to môžem najviac pre verziu CS4 (pred flash 8 bola este CS3), takže takto ti viac nepomôžem.

vykopírujem ti skript:

onEnterFrame = function () {
	var cas1:Date = new Date();
	var cas2:Date = new Date(2008, 07, 28, 0, 0, 0); // tu si nastavis datum ku ktoremu sa ma odpocitavat - rok, mesiac, den, hodina, minuta, sekunda
	
	//vypocet
	cas_milisekund = cas2.getTime()-cas1.getTime();
	sekund_celkem = Math.floor(cas_milisekund/1000);
	var dni = Math.floor(sekund_celkem/60/60/24);
	sekund_celkem -= dni*24*60*60;
	var hodin = Math.floor(sekund_celkem/60/60);
	sekund_celkem -= hodin*60*60;
	var minut = Math.floor(sekund_celkem/60);
	sekund_celkem -= minut*60;
	var sekund = Math.floor(sekund_celkem);
	var milisekund = cas_milisekund-dni*1000*60*60*24-hodin*1000*60*60-minut*1000*60-sekund*1000;
	
	// toto mozes teoreticky vyhodit, ide o skript ktory ovlada tie pasiky pod cislami (vid ukazku)
	stopky.pasikDni._xscale = 100-((100/365)*dni);
	stopky.pasikHodiny._xscale = 100-((100/24)*hodin);
	stopky.pasikMinuty._xscale = 100-((100/60)*minut);
	stopky.pasikSekundy._xscale = 100-((100/60)*sekund);
	stopky.pasikMs._xscale = 100-((100/1000)*milisekund);
	
	// tu z premennych robim stringy aby sa s nimi dalo pracovat ako s textom a nie ako s cislom
	dni = String(dni);
	hodin = String(hodin);
	minut = String(minut);
	sekund = String(sekund);
	milisekund = String(milisekund);
	
	// tu sa osetruje pridavanie nul pred cislo ak je kratsie ako 3 znaky
	if (dni.length == 1) {
		dni = "00"+dni;
	} else if (dni.length == 2) {
		dni = "0"+dni;
	}
	if (hodin.length == 1) {
		hodin = "0"+hodin;
	}
	if (minut.length == 1) {
		minut = "0"+minut;
	}
	if (sekund.length == 1) {
		sekund = "0"+sekund;
	}
	if (milisekund.length == 1) {
		milisekund = "00"+milisekund;
	} else if (milisekund.length == 2) {
		milisekund = "0"+milisekund;
	}
	//vypis do textoveho pola
	stopky.odpocitavanie.text = dni+":"+hodin+":"+minut+":"+sekund+":"+milisekund;
};


len doplnim že pre flash je januar=0, februar=1, ...... december = 11
flz
Profil
tento skript je umiestnený na frame,

na scene si vytvor MC s Instance Name "stopky" v ktorom budes mat dynamicke textove pole pomenovane v Instance Name ako "odpocitavanie"
screpyKOKO
Profil *
ahoj,díky moc:) jinač ještě se chci poptat..
když zadám datum
var cas2:Date = new Date(2011, 08, 1, 0, 0, 0);
tak mě to ukáže 32 dní,jak je to možné?
weroro
Profil
screpyKOKO:
V tom scripte od FLZa
onEnterFrame = function () {
	var cas1:Date = new Date();
	var cas2:Date = new Date(2008, 07, 28, 0, 0, 0);

to zmeň takto
var s_den:Number = 1;
var s_mesiac:Number = 8;
var s_rok:Number = 2011;
var s_hod:Number = 0;
var s_min:Number = 0;
var s_sek:Number = 0;
onEnterFrame = function ()
{
	var cas1:Date = new Date ();
	var cas2:Date = new Date (s_rok, s_mesiac - 1, s_den, s_hod, s_min, s_sek);
flz
Profil
weroro:
elegantné ;)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0