Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    860

    preload che fa i capricci [aiutino]

    salve ragazzi,

    io ho trovato in internet questo codice di preload delle immagini e l'ho introdotto nel mio sito che essendo pesante mi agevola caricando appunto anticipatamente le immagini prima.

    codice:
    <script type="text/javascript" language="javascript">
    /*<![CDATA[*/
    var immagini=new Array()
    var total; // Totale immagini da preparicare
    var cc=0; // Contatore Immagini già precaricate
    
    function changePage(){
         if(cc>=total){location.href= "home.asp";}
    }
    
    function preload(){
         total=preload.arguments.length; // Totale immagini da preparicare
         for (cont=0;cont<total;cont++)
         {
              immagini[cont]=new Image();
              immagini[cont].src=preload.arguments[cont];
              if(preload.arguments[cont]=='intro.jpg'){
                      immagini[cont].onload=function(){cc++;
                                          setTimeout("setInterval('changePage()',1000)",1000);
                                                              }}
              else{immagini[cont].onload=function(){cc++;}}
         }
    }
    
    function Caricate(){
      preload("zona1_a.png","zona1_b.png","zona1_b2.png","zona3a.png","zona3b.png","zona2_a.png","zona2_b.png","zona2_c.png","intro.jpg");
    }
    
    window.onload=Caricate
    
    /*]]>*/
    </script>
    sostanzialmente funziona ed infatti se le immagini non sono in cache memory le carica e poi passa alla pagina home.asp.
    Tuttavia qualche volte fa cilecca e il passaggio non avviene e questa accade specificatamente quando per esempio accendo il cp per la prima volta durante il giorno e quindi per capirci è il mio primo accesso al sito che essendo impostato come homepage di IE viene mandato automaticamente all'apertura di IE appunto.
    Altre volte invece il passaggio non avviene nonostante abbia già aperto il browser diverse volte e poi sia stato rimandato a home.asp

    potreste per favore controllare il codice e dirmi se trovate qualcosa di sballato oppure consigliarmi un altro codice da usare che mi permetta di caricare una pagina chiamata introduzione.asp in cui appunto il codice js viene contenuto e che se caso carichi le immagini prima ri dimandarmi a home.asp

    grazie mille ragazzi
    Linux Inside

  2. #2
    ho incontrato anch'io un problema del genere e ho risolto mettendo prima l'associazione degli eventi e poi l'impostazione del src. Prova a vedere se funziona.
    codice:
    <script type="text/javascript" language="javascript">
    /*<![CDATA[*/
    var immagini=new Array()
    var total; // Totale immagini da preparicare
    var cc=0; // Contatore Immagini già precaricate
    
    function changePage(){
         if(cc>=total){location.href= "home.asp";}
    }
    
    function preload(){
         total=preload.arguments.length; // Totale immagini da preparicare
         for (cont=0;cont<total;cont++)
         {
              immagini[cont]=new Image();
              if(preload.arguments[cont]=='intro.jpg'){
                      immagini[cont].onload=function(){cc++;
                                          setTimeout("setInterval('changePage()',1000)",1000);
                                                              }}
              else{immagini[cont].onload=function(){cc++;}}
              // Ora associo il src
              immagini[cont].src=preload.arguments[cont];
         }
    }
    
    function Caricate(){
      preload("zona1_a.png","zona1_b.png","zona1_b2.png","zona3a.png","zona3b.png","zona2_a.png","zona2_b.png","zona2_c.png","intro.jpg");
    }
    
    window.onload=Caricate
    
    /*]]>*/
    </script>

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    860
    ho varuiato il codice ma era ormai tempo che accedevo ad internet di conseguenza la prova è stata abbastanza parziale...

    per il momento ti ringrazio, se poi quando riaccendere il pc dopo averlo spento ovviamente dovessi notare che i problemi persistono riposto..


    grazie
    Linux Inside

  4. #4
    ti basta svuotare la cache per provare...cmq ok.


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.