Se connecter avec
S'enregistrer | Connectez-vous

document.write et Onload...

Dernière réponse : dans Programmation

bonjour,

j'ai qqs difficultés avec un script un peu tordu... peut etre pourriez vous m'aider à corriger les erreurs ?
et puis ca pourra peut etre vous servir un jour !
Le but est d'ouvrir une popup
cette popup chargera l'image mais ne l'affichera pas, afin de récupérer la taille de l'image.
la popup contiendra un tableau avec notre image en fond mais devant un gif (transparent), afin d'empecher la capture d'image !
diabolique, mais compliqué...

please help !

dans le <*HEAD> j'ai mis ca ;
<*script type="text/javascript" language="javascript">
// la valeur image contient url d'image issue d'une autre page html
image = "url de l'image";
document.write ('<img name="UpImageO" id="TTimgO" src="' + image + '" style="display:none" onload="GetImgZ();"> ');
}

function GetImgZ() {
ImgX = document.all.TTimgO.width;
ImgY = document.all.TTimgO.height;
//document.all.UpImageO.style.display= 'none';
window.resizeTo(ImgX+10,ImgY+40);
//window.alert ("resizing to X:" + ImgX + " ,Y:" +ImgY);

//jusqu'ici tout va bien... par contre la suite ne s'affiche po !
document.write ('<table width="' + ImgX + '" height="' + ImgY + '" border="0" cellpadding="0" cellspacing="0">');
document.write (' <tr>');
document.write (' <td background="' + image + '" align="center"><img src="image.gif" width="' + ImgX + '" height="' + ImgY + '">');
document.write (' </tr>');
document.write (' </table>');
}
// End -->
</script>

et voilà... c'est joli mais le tableau ne s'affiche pas. L'image est correctement redimmensionnée, mais pa s moyen d'afficher ce tableau !

Autres pages sur : document write onload

Lassé par la pub ? Créez un compte

le but du script ;

sur une page ; on a une série de vignettes
un clic sur chacune de ces vignette ouvre une popup avec l'image taille normale.
Pour protéger contre l'enregistrement de l'image, j'affiche un gif transparent par dessus.
La mission de ce script (placé dans le head de la page html qui affichera le popup), est de prendre comme parametre une URL d'image, est d'afficher cette image, et de redimensionner la popup à la taille de l'image.
Pour faire ca, c pas trop compliqué, je sais faire.
par contre, pour pouvoir mettre mon gif transparent par dessus, je la glisse en fond de tableau.
Mais là, je ne sais plus redimensionner la fenetre à la taille de l'image !
c'est pourquoi je fais ca ;
document.write ('<img name="UpImageO" id="TTimgO" src="' + image + '" style="display:none" onload="GetImgZ();"> ');
Ca me permet de récupérer les dimensions de l'image, mais sans l'afficher.
Ensuite, la procédure GetImgZ est bien appelée, le resize se fait nickel, mais par contre la suite ne donne rien...
J'ai vérifié à plusieurs reprise les syntaxes et rien n'y fait, pas de traces d'erreurs.
En fait, je me demande si c'est permis de faire des document.write dans une procédure appelée par onLoad.
si vous avez d'autres questions, n'hésitez pas !

Lassé par la pub ? Créez un compte
Tom's guide dans le monde