bonjour,

j'ai un pb pour afficher une image apres le chargement d'une page web

en faite il s'agit d'une carte que je doit afficher sur le site mais qui demande un certain temp de calcul. je voudrait donc afficher d'abord la page avec un message du type "loading..." puis une fois la page visible lancer les calcul et l'affichage de la carte.

j'ai essayer avec la l'evenement onload mais sa ne marche pas la page s'affiche d'un coup apres avoir effectuer tous les calculs et avoir créer l'image. il y a donc 2 a 3 secondes durant lesquel il y a une page blanche.

voila en gros comment j'ai fait :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
<body onload="javascript:loadImage();">
  ... suite de la page html
  <div id="carte"></div>
</body>
et la fonction loadImage() :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
function loadImage(){
    writediv("carte",file("affichageCartes.php"));
}
avec

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
function writediv(id,texte){
     document.getElementById(id).innerHTML = texte;
}
 
function file(fichier){
     if(window.XMLHttpRequest) // FIREFOX
          xhr_object = new XMLHttpRequest();
     else if(window.ActiveXObject) // IE
          xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
     else
          return(false);
     xhr_object.open("GET", fichier, false);
     xhr_object.send(null);
     if(xhr_object.readyState == 4) return(xhr_object.responseText);
     else return(false);
}
le fichier affichagesCarte.php lance différent calcul et attent que l'image soit créer puis retourne <IMG SRC="nom_de_l_image">'

voila si quelqu'un voit une erreur ou a une idée
merci d'avance