Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1469 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [javascript] écrire à la fin du document

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[javascript] écrire à la fin du document

n°1255441
nabbo
Posté le 29-11-2005 à 17:16:18  profilanswer
 

hello !
 
je cherche à faire un script d'envoi d'images (classique...)
mais avant de l'envoyer, je veux que le client puisse visualiser son image.
 
donc j'utilise le javascript suivant :
 

Code :
  1. <html>
  2. <head>
  3. <script language="javascript" type="text/javascript">
  4. function voir(){
  5. Fc=window.open("","Fc","resizable=no" );
  6. Fc.document.write('<html><body><center><table width="600"><tr><td align="center">');
  7. nav=navigator.appName.substring(0,3);
  8. if((nav=="Net" )||(nav=="Moz" )){
  9. Fc.document.write('<img name="apercu" src="file:///'+document.f1.fichier1.value+'">') ;
  10. }
  11. else
  12. {
  13. Fc.document.write('<img name="apercu" src="'+document.f1.fichier1.value+'">') ;
  14. }
  15. Fc.document.write('<br/><br/><form><input type="button" value="Fermer" onClick="parent.close()"></form><font size=2 face="arial" color="#0000FF">Nom et chemin de l\'image<br>'+document.f1.fichier1.value+'</font></td></tr></table></center></body></html>');
  16. Fc.document.close();
  17. }
  18. </script>
  19. </head>
  20. <body>
  21. <form enctype="multipart/form-data" action="" method="post" name="f1">
  22. Votre fichier doit être au format jpg<br>Choisir le fichier : <input name="fichier1" type="file"><br /><br /><input type="button" value="Aperçu " onclick="voir()">
  23. <input type="submit" value="Envoyer le fichier">
  24. </form>
  25. </html>
  26. </head>


 
Le problème est que quand on appuie sur "aperçu", c'est une nouvelle fenetre qui s'ouvre.
 
Je voudrais faire en sorte que l'image s'affiche à la suite du document, dans la même fenêtre.
 
Si je retire "window.open" et que je ne mets quedes documents.write, ca ne marche pas.
sur certains tutos, il est marqué qu'il faut mettre le code à l'endroit où l'on veut que ca écrive, mais moi ca écrit à la suite de la pression d'un bouton (bouton aperçu), donc je ne sais pas où placer correctement mon code.
 
quelqu'un peut-il m'aider ?
:jap:

mood
Publicité
Posté le 29-11-2005 à 17:16:18  profilanswer
 

n°1257308
nabbo
Posté le 02-12-2005 à 10:44:28  profilanswer
 

ok
 
devant l'enthousiasme général, je me suis retroussé les manches, et j'ai fini par trouver une solution avec en plus le redimensionnement de l'image à la volée, le tout en javascript :
 

Code :
  1. <html>
  2. <head>
  3. <script language="javascript" type="text/javascript">
  4. function apercuIframe() {
  5. parent.tdc.document.close();
  6. redimImage(document.f1.fichier1.value, 100, 100);
  7. parent.tdc.document.close()
  8. }
  9. function redimImage(inImg, inMW, inMH)
  10. {
  11.   // Cette function recoit 3 parametres
  12.   // inImg : Chemin relatif de l'image
  13.   // inMW  : Largeur maximale
  14.   // inMH   : Hauteur maximale
  15.   var maxWidth = inMW;
  16.   var maxHeight = inMH;
  17.   // Declarations des variables "Nouvelle Taille"
  18.   var dW = 0;
  19.   var dH = 0;
  20.   // Declaration d'un objet Image
  21.   var oImg = new Image();
  22.   // Affectation du chemin de l'image a l'objet
  23.   oImg.src = inImg;
  24.   // On recupere les tailles reelles
  25.   var h = dH = oImg.height;
  26.   var w = dW = oImg.width;
  27.   // Si la largeur ou la hauteur depasse la taille maximale
  28.   if ((h >= maxHeight) || (w >= maxWidth)) {
  29.     // Si la largeur et la hauteur depasse la taille maximale
  30.     if ((h >= maxHeight) && (w >= maxWidth)) {
  31.       // On cherche la plus grande valeur
  32.       if (h > w) {
  33.         dH = maxHeight;
  34.         // On recalcule la taille proportionnellement
  35.         dW = parseInt((w * dH) / h, 10);
  36.       } else {
  37.         dW = maxWidth;
  38.         // On recalcule la taille proportionnellement
  39.         dH = parseInt((h * dW) / w, 10);
  40.       }
  41.     } else if ((h > maxHeight) && (w < maxWidth)) {
  42.       // Si la hauteur depasse la taille maximale
  43.       dH = maxHeight;
  44.         // On recalcule la taille proportionnellement
  45.       dW = parseInt((w * dH) / h, 10);
  46.     } else if ((h < maxHeight) && (w > maxWidth)) {
  47.       // Si la largeur depasse la taille maximale
  48.       dW = maxWidth;
  49.         // On recalcule la taille proportionnellement
  50.       dH = parseInt((h * dW) / w, 10);
  51.     }
  52.   }
  53.   // On ecrit l'image dans le document
  54.   parent.tdc.document.write("<img src=\"" + inImg + "\" width=\"" + dW + "\" height=\"" + dH + "\" border=\"0\">" );
  55. };
  56. </script>
  57. </head>
  58. <body>
  59. <form enctype="multipart/form-data" action="" method="post" name="f1">
  60. Votre fichier doit être au format jpg<br>Choisir le fichier : <input name="fichier1" type="file" onchange="apercuIframe()"><br /><br />
  61. <input type="submit" value="Envoyer le fichier">
  62. <br>
  63. <br>
  64. <IFRAME SRC="./images/vide.gif" border='0' frameborder='0' align='left' NAME="tdc" ID="iframe"></IFRAME>
  65. </form>
  66. </body>
  67. </head>
  68. </html>


 
si vous avez des remarques ou des suggestions...
 
:jap:

n°1257312
FlorentG
Unité de Masse
Posté le 02-12-2005 à 10:46:51  profilanswer
 

nabbo a écrit :

sur certains tutos, il est marqué qu'il faut mettre le code à l'endroit où l'on veut que ca écrive,


Sur les tutos de qualités, il est surtout indiqué qu'il ne faut plus utiliser document.write, qui date de 1995 et qui roule en Renault 12, mais qu'il faut utiliser par exemples des fonctions DOM, ou utiliser la propriété innerHTML d'un élément pour réellement écrire où on veut, et surtout paraître plus moderne, montrer qu'on vit en 2005, et qu'on roule en Laguna 2 Phase 2 1.9 dCi...


---------------
last.fmflickr
n°1270422
nabbo
Posté le 20-12-2005 à 00:47:46  profilanswer
 

:hello:
 
je reviens à la charge... ma Renault 12 passe pas sous Firefox :D
 
tu connaitrais pas un bon concessionnaire qui vende du javascript récent "kipassesousfirefox" ?
 
merci :jap:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [javascript] écrire à la fin du document

 

Sujets relatifs
XSLT PHP et Do;document[HTML/Javascript] Faire un lien vers un exe...
[html/css/javascript] rafraichissement page de formulaireUne liste déroulante peuplée par une requête SQL (Javascript)
[javascript] possibilité d'associer 2 évènements ?[Javascript] [XMLHttpRequest] Probleme IE pour récupérer données X
lien vers une frame enfant en javascriptJavascript - possibilité d'ouvrir plusieurs pages en include
Problème avec Overflow/div & javascript[Javascript] leger probleme de chargement
Plus de sujets relatifs à : [javascript] écrire à la fin du document


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR