Autor | Zpráva | ||
---|---|---|---|
senior Profil |
#1 · Zasláno: 17. 1. 2008, 14:14:08
Príjemný deň,
hľadal som na nete i tu nejaký JS, ktorý by mi stále dookola menil obrázky. Našiel som toto, úplne to splňa moje predstavy, ale JS po 10 sekundách otvorí novú stránku, čo nepotrebujem. Prosím pomôžte mi s úpravou JS. Ďakujem. <img name="odect" width="30" height="30" src="odect1.gif"> <script language="javascript"> // porad dokola volana funkce, ktera nam pricita sekundy a meni obrazek function pricti(i) { // inkrementujeme promennou pocitajici sekundy i = i + 1; // nastavime obrazek na odect(promenna).gif, takze treba na odec1.gif document.images['odect'].src='odect'+i+'.gif'; // pokud napocitame deset sekund tak se presmerujeme na nova.htm if ( i == 10 ) document.location = 'nova.htm'; return i; } // inicializujeme promennou i ktera nam pocita sekundy i = 0; // casovani po vterinach a volani funkce pricti ( 1 * 1000 milisekund ) window.setInterval ("i = pricti(i)", 1 * 1000); </script> |
||
habendorf Profil |
#2 · Zasláno: 17. 1. 2008, 14:22:33
/ pokud napocitame deset sekund tak se presmerujeme na nova.htm
if ( i == 10 ) document.location = 'nova.htm'; Vždyť je to tam i popsaný. Takže si zkus tipnout, co je třeba z toho skriptu odmáznout. |
||
senior Profil |
#3 · Zasláno: 17. 1. 2008, 14:31:11 · Upravil/a: senior
habendorf
Skúsil som vymazať if ( i == 10 ) document.location = 'nova.htm'; ale JS pokračuje ďalej - odect11.gif, odect12.gif ..., takže to nepomohlo. |
||
habendorf Profil |
#4 · Zasláno: 17. 1. 2008, 14:34:57
No to je jasný, také nemá důvod nepokračovat. Myslel jsem, že otázka zní, jak zamezit přesměrování na nova.htm.
if ( i == 10 ) i=0; Jinak zde by byl asi lepší cyklus for. |
||
senior Profil |
#5 · Zasláno: 17. 1. 2008, 14:37:50
habendorf
Prepáč, ale "Jinak zde by byl asi lepší cyklus for." je pre mňa španielská dedina :-( |
||
habendorf Profil |
#6 · Zasláno: 17. 1. 2008, 14:40:33
No ale to if ( i == 10 ) i=0; by fungovat mělo.
Jinak k cyklu for: http://www.jakpsatweb.cz/javascript/vetveni.html#for |
||
senior Profil |
#7 · Zasláno: 17. 1. 2008, 14:44:42
habendorf
Vďaka ono to funguje, takže asi nebudem špekulovať s for. Poprosím ešte o skontrolovanie čistoty a správnosti JS. Ešte raz ďakujem. <script language="javascript"> // porad dokola volana funkce, ktera nam pricita sekundy a meni obrazek function pricti(i) { // inkrementujeme promennou pocitajici sekundy i = i + 1; // nastavime obrazek na odect(promenna).gif, takze treba na odec1.gif document.images['odect'].src='odect'+i+'.gif'; // pokud napocitame deset sekund tak se presmerujeme na nova.htm if ( i == 10 ) i=0; return i; } // inicializujeme promennou i ktera nam pocita sekundy i = 0; // casovani po vterinach a volani funkce pricti ( 1 * 1000 milisekund ) window.setInterval ("i = pricti(i)", 1 * 1000); </script> |
||
peta Profil |
#8 · Zasláno: 17. 1. 2008, 15:01:27 · Upravil/a: peta
i = 0; -> URCITE var i=0;
i = i + 1; -> NEBO i++; if ( i == 10 ) i=0; -> NEBO i%=10; habendorf for nelze pouzit, protoze on 10x vymenuje 1x obrazek, nikoliv 10 ruznych. |
||
senior Profil |
#9 · Zasláno: 17. 1. 2008, 15:09:07
peta
Vďaka, ale prečo i = 0; -> URCITE var i=0; keď to funguje? Učím sa JS, takže preto tá otázka lamy. |
||
Leo Profil |
#10 · Zasláno: 17. 1. 2008, 17:13:00
"Vďaka, ale prečo
i = 0; -> URCITE var i=0; keď to funguje? Učím sa JS, takže preto tá otázka lamy." Protoze nikdy nevite, jestli promenna i neni uz definovana, Leo |
||
Chamurappi Profil |
#11 · Zasláno: 17. 1. 2008, 17:18:18
Reaguji na Lea:
Přidání „var“ na tom ovšem u globální proměnné nic nezmění. |
||
peta Profil |
#12 · Zasláno: 18. 1. 2008, 08:10:22
Chamurappi
a, opet promluvil expert, boze pomoz :) |
||
Chamurappi Profil |
#13 · Zasláno: 18. 1. 2008, 10:33:26
Reaguji na petu:
Buď mi zkusíš vysvětlit, co jsem řekl špatně, nebo tvůj anonymní pobožný výkřik smažu. |
||
peta Profil |
#14 · Zasláno: 18. 1. 2008, 11:46:12
Chamurappi Jsem pro to smazani. Jen mne potesilo, co vsechno se jeste od tebe dozvim po stovkach JS programu. Proste tam to var ma byt. Jestli to funguje bez nej je vec prohlizece a v jinem to tak byt nemusi. Pravdepodobne to pojede v IE, pravdepodobne v tebou oblibene Opere a je mozne, ze ve FF tuto funkci tez zprovoznili. Ale nespolehal bych na to. Presne jako minule, uz nevim, o co slo. Nejaka pitomost. Tak to tam proste neda, no, bude mu to fungovat. Spokojenej. Neresit.
|
||
Chamurappi Profil |
#15 · Zasláno: 18. 1. 2008, 12:17:06
Reaguji na petu:
„Jestli to funguje bez nej je vec prohlizece a v jinem to tak byt nemusi“ Musí. Najdi mi prohlížeč, kde to hází chybu. Sám píšu „var“ vždy, ale jen kvůli přehlednosti (o té Leo nemluvil), na funkčnost to nemá vliv. „je mozne, ze ve FF tuto funkci tez zprovoznili“ Tato „funkce“ v něm funguje odjakživa. |
||
es Profil * |
#16 · Zasláno: 18. 1. 2008, 12:38:07
„Jestli to funguje bez nej je vec prohlizece a v jinem to tak byt nemusi“
Musí. Najdi mi prohlížeč, kde to hází chybu. Predpokladám, že to je aj v špecifikácii javascriptu. Či to tam podľa nej byť musí alebo len môže. |
||
Leo Profil |
#17 · Zasláno: 18. 1. 2008, 15:06:40
Mily Chamurappi, zkuste si v IE tento kod (html omacku jako head, body atd. vynechavam) a kouknete se na chyby:
1, <p id="x">Blabla</p> <script type="text/javascript"> x = 5; </script> a ted tenhle: 2, <p id="x">Blabla</p> <script type="text/javascript"> var x = 5; </script> Leo |
||
Chamurappi Profil |
#18 · Zasláno: 18. 1. 2008, 15:39:16
Reaguji na Lea:
Pravda, na to jsem zapomněl. Omlouvám se, milý Leo. |
||
Časová prodleva: 16 let
|
0