Originariamente inviato da alvin68
Salve a tutti,

scrivo per la prima volta su questo forum, ponendo un quesito che mi pare non sia stato trattato (almeno scorrendo la lista del topic in rilievo).

Premetto che non ho alcuna competenza in materia di javascript... ma vengo subito al dunque.

Avendo la necessità di un preload, utile per ingannare l'attesa degli utenti con linea di connessione analogica 56 k, su di un sito che sto costruendo le cui pagine contengono sia immagini sia swf, ho trovato in rete quello che mi serviva .

Si tratta di uno script da inserire nell'head dell'html (quindi non tramite js esterno) e che viene richiamato nel body. E' ottimo perché permette di visualizzare una finestra di messaggio durante il caricamento di una pagina contenente TUTTI i tipi di elementi (immagini, swf, suoni, ecc.), finestra che scompare appena il caricamento è terminato. Inoltre, funziona crossbrowser.

La finestra di messaggio non è altri che un div , il quale naturalmente può essere personalizzato tramite css assegnandogli un id .
Ma a parte il testo, ed eventualmente una gif animata che posso inserire nel div , vorrei poter visualizzare pure la percentuale del caricamento in corso .

Esiste un modo per modificare lo script ottenendo tale funzione in più?
Uno script preconfezionato empirico (sicuramente esiste in rete) ma che funzioni decente ho qualche dubbio, di fatto hai diversi elementi il browser (che visualizza e interpreta la pagina) il server (dove risiede la pagina) la connessione (che può essere veloce o lenta). E da quello che so io tutti funzionano alla stessa maniera sapendo quanto pesa la pagina e all'incirca a quanto viaggi (adsl/56k) esegue un calcolo e mostra un immagini in percentuale. Ci sono diversi fattori che rendono tutta l'operazione empirica tipo: Identificare la velocità (di solito la si chiede all'utente, e rilevalo in automatico non sono neanche sicuro che si possa fare) le connessioni simultanee sul server che posso cambiare di continuo pertanto rallentare o velocizzare l'operazione di caricamento.
Detto questo la domanda è ne vale la pena? Se la risposta è si cerca su google "preload in percentuale" o simili.

Oltre a ciò, però c'è un'altra cosa che ritengo più importante e mi preme particolarmente: la possibilità, come dire, di "disabilitare" il preload dopo il primo caricamento . In altri termini, dovendo mettere il preload in tutte le pagine del sito, nonostante ormai gli elementi risultino presenti nella cache del browser, colui che naviga da una pagina all'altra vedrà sempre questa finestra di messaggio anche soltanto per una frazione di secondo, il che è piuttosto fastidioso.
Per eliminare questo disagio puoi impostare un cookie (per info sui cookie vedi discussioni utili nella pagina iniziale di questo forum) nello script che funzionerà in questa maniera: Leggo se esiste il cookie se non esiste lo creo e lo imposto in on e faccio partire il preload se esiste non faccio partire il preload, questo in sintesi.

Invece, io vorrei che il preload venisse visualizzato solo la prima volta che il navigatore visita il sito e che, caricate in cache le pagine, non ci sia più alcuna finestra di messaggio ma agisca in modo silente.

Spero in una soluzione a questo problema, e ringrazio in anticipo chi saprà aiutarmi.
Ciao e benvenuto sul forum