[JAVASCRIPT]Refresh Clicca QUI per vedere il messaggio nel forum |
LazerPhEa |
Ciao a tutti!
Non sono un mastro col javascript, e vorrei sapere se è fattibile la seguente cosa:
sul server ho una directory dove ad intervalli regolari (diciamo 1 secondo) vengono caricate immagini con dei nomi progressivi tipo: "img1", "img2", "img3" ecc... e sul client ho uno script che ad intervalli regolari visualizza le immagini in sequenza, creando una specie di refresh.
Ora: su reti molto lente succede che il "frame" successivo a quello attualmente visualizzato non sia ancora stato trasferito completamente al momento della sua visualizzazione, e mi piazza una bella immagine nera. C'è un modo di subordinare la visualizzazione di un'immagine al suo completo caricamento?
:ciao: |
ripe |
Non riesco ad inquadrare bene il tuo problema... |
Alf |
Originally posted by LazerPhEa
Ciao a tutti!
Non sono un mastro col javascript, e vorrei sapere se è fattibile la seguente cosa:
sul server ho una directory dove ad intervalli regolari (diciamo 1 secondo) vengono caricate immagini con dei nomi progressivi tipo: "img1", "img2", "img3" ecc... e sul client ho uno script che ad intervalli regolari visualizza le immagini in sequenza, creando una specie di refresh.
Ora: su reti molto lente succede che il "frame" successivo a quello attualmente visualizzato non sia ancora stato trasferito completamente al momento della sua visualizzazione, e mi piazza una bella immagine nera. C'è un modo di subordinare la visualizzazione di un'immagine al suo completo caricamento?
:ciao:
Spero di aver capito bene il problema.
L'ideale sarebbe una funzione che ti dice se un file immagine e' integro, prima di caricarlo.
Ma non so se esiste.
Un' alternativa potrebbe consistere nel caricare un' immagine SOLO se esiste il file dell'immagine successiva.
Questo se le carica sequenzialmente.
In questo modo sei sicuro che l'immagine "corrente" e' stata downlodata interamente.
Sempre che abbia capito bene il problema :) |
ripe |
Ammesso che sia invece un problema di 'caching', io uso questo metodo:
PHP:
<script language="JavaScript">
if (document.images) {
var immagine = new Image(x, y);
immagine.src="http://www.tuosito.it/immagine.gif";
}
</script>
In questo modo l'immagine viene caricata prima della sua visualizzazione... |
Alf |
Originally posted by ripe
Ammesso che sia invece un problema di 'caching', io uso questo metodo:
PHP:
<script language="JavaScript">
if (document.images) {
var immagine = new Image(x, y);
immagine.src="http://www.tuosito.it/immagine.gif";
}
</script>
In questo modo l'immagine viene caricata prima della sua visualizzazione...
Boh io avevo capito che ha un server in cui vengono messe a intervalli delle immagini con nome progressivo.
Da un client cerca di vederle in ordine come tanti frame.
E avevo capito che il suo problema e' dovuto al fatto che la rete a volte e' un po' lenta e ci sta diversi secondi per mettere completamente il file sul server.
Quindi quando il client prova a visualizzare l'immagine trova un file incompleto e visualizza un "nero".
Questo e' quel che avevo capito io :)
ma visto che non sono un esperto di Javascript io stavo dando una soluzione generale di programmazione :)
Boh :)
Che fa esattamente quel che hai scritto, ripe ?! |
ripe |
Crea una copia in memoria dell'immagine da visualizzare, prima che essa venga chiamata nella pagina dal browser...
E' utile ad esempio per precaricare le immagini di un mouse-over, o di una grossa galleria di foto...!
Pensavo che magari potesse fare una prova, pure senza specificare grandezza e larghezza dell'immagine... anche se in questo modo è più veloce!
Se il problema è come l'hai intuito tu (e ad occhio mi sa che hai ragione), credo non ci sia nulla da fare in Javascript... |
LazerPhEa |
Sìsì!!! Alf, hai capito il mio problema! Forse riesco a cavarmela con un "onerror" e qualche millisecondo di delay!
Però se qualcuno ha idee migliori... ;) |
Alf |
Originally posted by LazerPhEa
Sìsì!!! Alf, hai capito il mio problema! Forse riesco a cavarmela con un "onerror" e qualche millisecondo di delay!
Però se qualcuno ha idee migliori... ;)
onerror ??
Cioe' ?!
Beh se provi a fare come suggerivo semplicemente visualizzi l'immagine quando ha iniziato a scrivere l'altra :)
Se ti serve che siano perfettamente in sincrono ... non so forse sa dirti ripe se esiste un comando che controlla l'integrita' di un file immagine.
Ah ripe ho capito :D |
|
|
|