Preloader petits problèmes

Signaler
Messages postés
68
Date d'inscription
jeudi 27 janvier 2011
Statut
Membre
Dernière intervention
3 février 2018
-
Messages postés
68
Date d'inscription
jeudi 27 janvier 2011
Statut
Membre
Dernière intervention
3 février 2018
-
Bonjour!

Alors j'ai un petit soucis avec un preloader javascript. En effet, j'utilise un div ( via css ) avec un background-image qui contient le loader et la barre de chargement. tout fonctionne bien sauf que le loader met du temps a apparaitre sur la page. J'ai donc fait un preloader de l'image du background, me disant que si elle était chargée elle apparaitrait directement sur la page suivante ( qui est le vrai loader vous me suivez? :p )...

Bon tout ceci est un peu flou, voici le code, si vous ne comprennez pas quelque chose je serais ravi de répondre a vos questions.

Merci ;)












<script> // JavaScript Document
var time = 1; // temps en seconde apres lequel la bar de chargement disparait une fois finie
    
    var maxtime = 120; // temps maximum apres lequel la bar de chargement disparait
  
        /* PAs touche */
        var done = 1;
        time = time * 1000;
        maxtime = maxtime * 1000;
        loaded = new Array();
  
        function Pre_load()
        {
            for( index = 0; index < document.images.length; index++ )
            {
                loaded[ index ] = false;
            }
        }
  
  
    window.setTimeout( "document.getElementById('loadimages').style.visibility='hidden';", maxtime );
        
    function Preload_Img()
    {
        imgs = document.images;
  
            for( index = 0; index < imgs.length; index++ )
            {    
                if( done >= imgs.length )
                {
                    break;
                }
                    else if( imgs[ index ].complete && loaded[ index ] == false )
                {
                    done++;
                    loaded[ index ] = true;
                }
            }
            
            if( done >= imgs.length )
            {
                window.setTimeout( "document.getElementById('loadimages').style.visibility='hidden';", time );
            }
                else
            {
                window.setTimeout( "Preload_Img()", '58' );
            }

 
            if( done == imgs.length )
            {
                window.setTimeout( "window.location.href='intro.html';", time);
            }
  
        PRC = Math.round( ( ( done / imgs.length ) * 100 ) );
barwidth = PRC * 2.13 ;
          
        preview = 

''
+'
'+'
'
+ '                 '+ PRC + ' ' + '%'

        document.getElementById('preloader').innerHTML = preview;
    }
    
    Pre_load();
    Preload_Img();

</script>



Copyright©2010 CSTM
Km 4,5 Route de Rufisque
(+221) 33 859 52 00













































4 réponses

Messages postés
68
Date d'inscription
jeudi 27 janvier 2011
Statut
Membre
Dernière intervention
3 février 2018

je rajoute qu'en local, le pourcentage met "infinity" et ne bascule pas sur la page suivante (intro.html). Pourtant en ligne cela fonctionne bien. Si ça peut aider...
Messages postés
68
Date d'inscription
jeudi 27 janvier 2011
Statut
Membre
Dernière intervention
3 février 2018

( arf un 3e post, pas de commende éditer dommage )

Je viens de tester, et en fait sous Firefox ça marche ( mais quand même long a apparaitre ) tandis que sous IE ça attend carrément 100% pour que quelquechose daigne apparaitre :/
Messages postés
6146
Date d'inscription
dimanche 21 décembre 2003
Statut
Modérateur
Dernière intervention
4 septembre 2013
9
Ceci est un code javascript, donc aucun rapport avec Flash/ActionScript.

Je déplace en section concernée.

Peg'
Admin Codes-Sources
Messages postés
68
Date d'inscription
jeudi 27 janvier 2011
Statut
Membre
Dernière intervention
3 février 2018

Dans le code javascript, j'ai rajouté type="text/javascript" que j'avais oublié, du coup, maintenant même online j'ai Infinity à la place du pourcentage et ça ne bouge pas.