Autor Zpráva
ph@tE
Profil *
Toto je spuštění galerie jako prezentace, nevíte jak bych měl udělat funkci prezentace_stop(), která by funkci casovani() nějak zastavila? Aby se prostě přestala promítat. Vůbec na to nemůžu přijít...děkuju

var timing = 2000;
function casovani(){
casovac = window.setTimeout("document.getElementById(\"obr_src\").src=\"pictures /picture_2d_2.jpeg\"", timing);
if (timing==2000) casovac=window.setTimeout("document.getElementById(\"obr_src\").src=\" pictures/picture_2d_3.jpeg\"", timing+=2000);
if (timing==4000) casovac=window.setTimeout("document.getElementById(\"obr_src\").src=\" pictures/picture_2d_4.jpeg\"", timing+=2000);
if (timing==6000) casovac=window.setTimeout("document.getElementById(\"obr_src\").src=\" pictures/picture_2d_5.jpeg\"", timing+=2000);
if (timing==8000) casovac=window.setTimeout("document.getElementById(\"obr_src\").src=\" pictures/picture_2d_6.jpeg\"", timing+=2000);
if (timing==10000) casovac=window.setTimeout("document.getElementById(\"obr_src\").src=\" pictures/picture_2d_7.jpeg\"", timing+=2000);
if (timing==12000) casovac=window.setTimeout("document.getElementById(\"obr_src\").src=\" pictures/picture_2d_8.jpeg\"", timing+=2000);
if (timing==14000) casovac=window.setTimeout("document.getElementById(\"obr_src\").src=\" pictures/picture_2d_9.jpeg\"", timing+=2000);
if (timing==16000) casovac=window.setTimeout("prezentace_stop()", timing+=2000);
if (timing==18000) timing=2000;
}
habendorf
Profil
Ten kód, to je krapet šílenost. Co třeba použít cykly?
Leo
Profil
jinak clearTimeout (clearInterval), Leo
ph@tE
Profil *
Já vim, že to asi de udělat jinak, ale nic mě nenapadlo. Jak mám použít cykly? Na window.clearTimeout("casovac") to nějak nereaguje, to jsem už zkoušel...
habendorf
Profil
Jak mám použít cykly?

Využil bych toho, že se obrázky jmenují stejně, mění se jim jen ta poslední číslice. A kdyby se jmenovaly různě (a muselo to tak zůstat), naházel bych si je do pole a cyklem k nim přistupoval přes index pole.
ph@tE
Profil *
Co? Já jsem v javascriptu docela začátečník, nemohl bys mi to prosim vypsat, aspoň ňák schematicky?
Leo
Profil
No na zacatecnika jste se pustil do pekneho... a sloziteho... kodu :-) Mate tam napriklad dvakrat casovac = v te fci, pokud je timing 2000, takze jeden prepise druhy... Leo
Leo
Profil
Ceho se vlastne lidskymi slovy snazite dosahnout? Leo
ph@tE
Profil *
No aby ste to pochopil tek se na to radši podívejte, jak to má vypadat: http://www.phateweb.wz.cz/otevirac.htm. Musíte kliknout na ten odkaz, ta galerie se totiž bude otevírat v okně 800X600. Nyní se pokouším o to, aby se ta prezentace dala stopnout. Její spuštění prozatím funguje pouze když se nezmění žádný obrázek...
ph@tE
Profil *
sorry http://www.phateweb.wz.cz/otevirac.htm
Leo
Profil
Takze chcete stejny img element kazde dve sekundy vymenit za nasledujici obrazek, je to tak? Leo
Anonymní
Profil *
Přesně tak a nevím jak to zastavit, povedlo se mi akorát, že až to dojede, tak že se timing vrátí na původní hodnotu - může se to spustit znova...
ph@tE
Profil *
Zapoměl jsem si napsat jméno:-)
Leo
Profil
Co treba neco v tomhle stylu:

v HTML

<img id="obr" src="obrazek1.jpg" ....>

v JS

var timing = 2000;
var cislo = 1;
var obr = document.getElementById("obr");
var casovac;

function dalsi() {
cislo++;
obr.src = "obrazek"+cislo+".jpg";
}

function spust() {
casovac = setInterval("dalsi()",timing);
}

function zastav() {
clearInterval(casovac);
}

spust();

Neresi to radu veci (cislo nemuze jit donekonecna, namate zaruku, ze obrazky jsou uz vsechny stazene, atd.), ale jde o princip.

Leo
peta
Profil *
Leo
Mno, co se tyce stahnuti, ja mam pocit, ze by mohl obrazky generovat pres JS.
http://www.phateweb.wz.cz/otevirac.htm
A script spousti stejne az na odkliknuti, do te doby, nez se uzivatel rozkouka, by meli byt obrazky v podstate nacteny :)
ph@tE
Profil *
Díky moc, ještě si to nějak upravím, ale to jsou jenom kosmetický změny, který ňějak zvládnu, kdyby ne, tak zas napíšu:-)
Toto téma je uzamčeno. Odpověď nelze zaslat.