Autor | Zpráva | ||
---|---|---|---|
blue Profil * |
#1 · Zasláno: 10. 6. 2006, 12:33:05
tak. můj problém:
mám php pole obrázků, zde je výpis kódu: <?php $images = array("1","2","3","4","5","6","7","8","9","10","11","12","13","14","15 ","17","18","19","20","21","22"); $min=date("i")/2; $sec=date("s")/6; $sec=explode(".",$sec); $pic=$sec[0]; $min=explode(".",$min); if($min[1] == "") { $pic=$pic+10; } ?> <div id="main_img"> <img alt="hlavní obrázek" class="img_main" src="img/menu/img<?php echo $images[$pic]; ?>.jpg"> </div> --konec-- a chci aby se těch 22 obrázků měnilo pomocí časovače dělaného v js., tzn. za třeba 10 sekund by se na obrazovce obrázek změnil v jiný.. náhodně. jak to mám udělat a není lepší to celé udělat v .js a jak? naléhavě prosím |
||
PerToon Profil |
#2 · Zasláno: 10. 6. 2006, 12:54:49
PHP se zpracuje před odesláním do počítače, javascript až v počítači = nemůžeš javascriptem časovat php... takže to udělat v JS.
|
||
blue Profil * |
#3 · Zasláno: 10. 6. 2006, 13:05:15
a nevíš jak prosím? (nej by byl kód..)
|
||
Časová prodleva: 5 dní
|
|||
fajzen Profil * |
#4 · Zasláno: 15. 6. 2006, 17:17:58
Úspešne som otestoval tento kód:
<script language="JavaScript"> var ktory= 0; //premenna, ktora sluzi ako casovac function men() { ktory += 1; if (ktory== 4) //ak sa dostane mimo rozsah obrazkov, skoci na zaciatok- treba nastavit na (pocet_obrazkov + 1) ktory= 1; if (ktory== 1) document.getElementById('niekde').innerHTML= '<img src=sm/1.gif>'; //upraviť cesty a názvy obrázkov! if (ktory== 2) document.getElementById('niekde').innerHTML= '<img src=sm/2.gif>'; if (ktory== 3) document.getElementById('niekde').innerHTML= '<img src=sm/3.gif>'; //atd setTimeout('men()', 10*1000); //vola samu seba o 10 sekund neskor } setTimeout('men()', 0); //pri jednoduchom volani funkcie men(); to nefunguje (???) </script> potom niekde na stránke použiješ niečo ako: <span id="niekde"></span> <!-- TU sa budu zobrazovat obrazky---> nemusí to byť zrovna span, lepší je <div>, lebo mu môžeš nastaviť rozmery, dôležité je však zachovať id (alebo ho zmeniť aj v skripte...) ak sa ti nepáči, že funkcia men() volá samú seba (až dvakrát!), nahraď obe volania jedným: window.setInterval ('men()', 10*1000) ale musíš počítať s dvomi vecami: 1. prvých 10 sekúnd sa nič nezobrazí (jedine že by si tam vložil nejaký obrázok ako defaultný- medzi tagy <span> a </span>, čož je aj lepšie- čo ak má niekto zakázaný JS) 2. myslím, že niektoré staršie verzie prehliadačov nepodporujú setInterval... Myslím, že to by mohlo byť asi všetko :) |
||
tiso Profil |
#5 · Zasláno: 15. 6. 2006, 17:48:11 · Upravil/a: tiso
Kedysi dávno som to niekde videl - niekto gumoval a opäť písal číslice...
analógové hodiny: http://interval.cz/clanky/analogove-hodiny-pomoci-javascriptu/ |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0