čaute, mám takýto problém:
mám na stránke funkciu gallery(), ktorú volám v intervale (teraz konkrétne 12 sekúnd) pomocou setInterval('gallery()',12000); a tak sa premieňajú automaticky obrázky. Všetko pekne funguje ako má. Problém nastane, keď si stránku nechám otvorenú, prepnem sa do inej záložky v prehliadači na inú stránku a po čase dlhšom ako tých 12 sekúnd sa vrátim naspäť na tú stránku s galériou (do pôvodnej záložky), tá galéria sa už neprepína v intervale 12 sekúnd ale po 1 sekunde a to takto trvá určitý čas. Potom ako sa to takto vyblázni (pravdepodobne ako sa poprepínajú všetky obrázky, ktoré by sa zobrazili, ak by som sa zo stránky neprepol na inú), tak zasa sa tie obrázky v galérii prepínajú tak, ako sa majú po 12 sekundách. Nevie niekto, kde by mohol byť problém? A ako ho odstrániť?
Dúfam, že som to zrozumiteľne popísal.. ak nie, tak sa pýtajte a skusím to upresniť.
Problém javascript setInterval
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Re: Problém javascript setInterval
problém bude v zdrojáku. A ako ho odstrániť? No to by sme ho museli vidieť 
Re: Problém javascript setInterval
tak teda tu je zdroják
hádam sa tá chyba niekde nájde .. ako som písal..ono to funguje, len problém nastane ak sa prepnú záložky, alebo okná v prehliadači a po nejakom čase to zblbne a potom sa to zas vráti do normálu
//autoeditácia príspevku (30 Júl 2011, 20:20)
takže problém nie je v zdrojáku, keď nikto nevie odpovedať?
Kód: Vybrať všetko
$(document).ready(function() {
setInterval('gallery()',12000);
});
function gallery() {
var current = ($('#gallery a.show')? $('#gallery a.show') : $('#gallery a:first'));
var next = ((current.next().length) ? ((current.next().hasClass('caption'))? $('#gallery a:first') :current.next()) : $('#gallery a:first'));
var caption = next.find('img').attr('rel');
next.css({opacity: 0.0}).addClass('show').animate({opacity: 1.0}, 1000);
current.animate({opacity: 0.0}, 1000).removeClass('show');
$('#gallery .caption').animate({opacity: 0.0}, { queue:false, duration:0 }).animate({height: '1px'}, { queue:true, duration:300 });
$('#gallery .caption').animate({opacity: 0.7},100 ).animate({height: '65px'},500 );
$('#gallery .content').html(caption);
}
takže problém nie je v zdrojáku, keď nikto nevie odpovedať?
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Re: Problém javascript setInterval
v zdrojaku nevidim nic zle. Zrejme si s tym nevie iba prehliadac moc poradit, lebo tam robis dost operacii narocnych na vykreslovanie a ked je okno neaktivne tak sa tieto veci nespracuvavaju.