erreur ds mon code

erreur ds mon code - HTML/CSS - Programmation

Marsh Posté le 04-05-2006 à 20:59:27    

bonjour tt le monde
je precise avt tte chose que ce sujet n'a rien a voir avec celui que j'ai pu poster  il y a peu  
voila, je suis en train de faire un ti diaporama en javascript(rien de bien mechant) et en fait j'ai une tite erreur ds mon script: l'utilisateur fait défiler les images, et lorqu'une lui plait, il a l'opportunité de cliquer pour l'afficher en grand ds une fenetre popup (c'est une utilisation en locale pour ceux qui se posent la question)
tjs est il que j'ai une erreur et la fenetre pop up apprait bien mais avec rien dedans:
je vous joint donc ma fonction qui ouvre la popup, en esperant que qqun trouve ce qi va pa
merci d'avance
 

Code :
  1. function lancer()
  2. {
  3.   wPopup = window.open('', 'img_popup', 'width='+(screen.width-15)+', height='+(screen.height-60)+', top=0, left=0, status=no, directories=no, toolbar=no, location=no, menubar=no, scrollbars=no, resizable=yes');
  4.       // On écrit le contenu de la fenêtre popup
  5.       wPopup.document.clear();
  6.       wPopup.document.write("<html><head><title>photographie</title></head>" );
  7.       // La fonction qui attend que l'image soit chargée et affichée pour redimensionner la fenêtre à la bonne taille
  8.       wPopup.document.write("<body>" );
  9.       wPopup.document.write("<script language='javascript' type='text/javascript'>" );
  10.       wPopup.document.write("<table width='100%' height='100%' align='center' cellpadding='0' cellspacing='0'>" );
  11.       wPopup.document.write("<tr>" );
  12.       wPopup.document.write("<td align='center' valign='middle' width='1150' height='740'>" );
  13.       wPopup.document.write("<img src=' "+tab_images_max[current_max]+" ' border='0' width='400' height='300'>" );
  14.       wPopup.document.write("</td>" );
  15.       wPopup.document.write("</tr>" );
  16.       wPopup.document.write("</table>" );
  17.   wPopup.document.write("</script>" );
  18.       wPopup.document.write("</body></html>" );
  19. }

Reply

Marsh Posté le 04-05-2006 à 20:59:27   

Reply

Marsh Posté le 04-05-2006 à 22:21:51    

Code :
  1. wPopup.document.write("<img src=' "+tab_images_max[current_max]+" ' border='0' width='400' height='300'>" );


 
Les espaces .... :heink:  
 

Code :
  1. wPopup.document.write("<img src='"+tab_images_max[current_max]+"' border='0' width='400' height='300'>" );

Reply

Marsh Posté le 16-05-2006 à 19:20:35    

salut à tous
j'ai refè un nouveau code pour cette fois çi créer une visionneuse
ça marche bien toutfois j'ai 2/3 ptits soucis
en fait j'ai une image principale a gauche et des vignettes qu'on peut faire défiler avec un système de calque à droite
les photos sont stockées de la manière suivante:
 
script.php
                L___ photos
                                L_____ max
                                L_____ min
 
le script va recuperer les photos dans max et dans min tt seul
simplement j'arrive pa a faire 2 choses:
-tout d'abor que le script affiche tte les photos les unes a la suite des autres dans les vignettes (au lieu que j'ai a les rentré moi meme)
- et j'aimerais bien que lorqu'on clic sur une photo vignette a droite elle apparaisse sur la partie gauche (comme prevu)
 
voila mon script (assez long dsl)
pour comprendre l'erreur je vous conseille vivement d'executer direct le script ordonné comme vu ci-dessus avec nimporte quelles photos de n'importe quelle taille (le script gère tt ça) , l'important c'est que les photos soient ds le meme ordre ds max et ds min
 
merci d'avance pour votre aide
 

Code :
  1. <html>
  2. <head>
  3. <title>diaporama</title>
  4. <!---------------------------------------paramétrage des photos--------------------------------->
  5. <!---------------------------------------------------------------------------------------------->
  6. <script language="JavaScript">
  7. current_max=0;
  8. current_min=0;
  9. prev_active=0;
  10. next_active=1;
  11. play_active=1;
  12. click_tempo=200;
  13. diapo_tempo=5000;
  14. move_speed=5;
  15. move_delay=10;
  16. //paramétrage suivant écran
  17. lect_x=80*screen.width/1024;
  18. lect_y=80*screen.height/768;
  19. if (screen.width<1050)
  20. {
  21.         largeur="100%";
  22.         hauteur="100%";
  23. }
  24. else
  25. {
  26.         largeur="1000";
  27.         hauteur="600";
  28. }
  29. if (screen.height<700)
  30. {
  31.         img_h=290;
  32.         imgplay_h=400;
  33.         lect_x=20;
  34.         lect_y=30;
  35. }
  36. else
  37. {
  38.         img_h=400;
  39.         imgplay_h=550;
  40. }
  41. </script>
  42. <!----------------------------script qui va chercher les photos--------------------------------->
  43. <!---------------------------------------------------------------------------------------------->
  44. <?php
  45. echo "<script language='JavaScript'>\n";
  46. echo "<!-- Début du script\n";
  47. $handle = @opendir("./photos/min" ); //Ouverture du répertoire et récupération du pointeur
  48. while ($file = @readdir($handle)) { //On scanne le répertoire
  49.         if (ereg('.jpg',$file))
  50.         {
  51.                 echo "img$i=new Image;img$i.src='photos/min/$file';\n";
  52.                 $i++;
  53.         }
  54. }
  55. @closedir($handle);
  56. echo "//  Fin du scrip  -->\n";
  57. echo "</script>\n";
  58. ?>   
  59. </head>
  60. <body BGCOLOR="#F1F0C0" topmargin="0" >
  61. <?php
  62. $i=0;$j=0;
  63. echo "<script language='JavaScript'>\n";
  64. echo "<!-- Début du script\n";
  65. echo "tab_images_max = new Array();\n";
  66. echo "tab_images_min = new Array();\n";
  67. $handle = @opendir("./photos/min" ); //Ouverture du répertoire et récupération du pointeur
  68. while ($file = @readdir($handle)) { //On scanne le répertoire
  69.         if (ereg('.jpg',$file))
  70.         {
  71.                 echo "tab_images_min[$i] = 'photos/min/$file';\n";
  72.                 $i++;
  73.         }
  74. }
  75. @closedir($handle);
  76. $handle = @opendir("./photos/max" ); //Ouverture du répertoire et récupération du pointeur
  77. while ($file = @readdir($handle)) { //On scanne le répertoire
  78.         if (ereg('.jpg',$file))
  79.         {
  80.                 echo "tab_images_max[$j] = 'photos/max/$file';\n";
  81.                 $j++;
  82.         }
  83. }
  84. @closedir($handle);
  85. echo "tab_images_max[$j] = 'xxxxxx';\n";
  86. echo "tab_images_min[$i] = 'xxxxxx';\n";
  87. echo "//  Fin du scrip  -->\n";
  88. echo "</script>\n";
  89. ?>
  90. <script language="JavaScript">
  91. diapo_sup=0;
  92. img=new Image;
  93. <!-- fonction qui permet de lancer une photo ds une pop up quand on clic sur l'image à gauche--->
  94. <!---------------------------------------------------------------------------------------------->
  95. function lancer()
  96. {
  97.   wPopup = window.open('', 'img_popup', 'width='+(screen.width-15)+', height='+(screen.height-60)+', top=0, left=0, status=no, directories=no, toolbar=no, location=no, menubar=no, scrollbars=no, resizable=yes');
  98.       // On écrit le contenu de la fenêtre popup
  99.       wPopup.document.clear();
  100.       wPopup.document.write("<html><head><title>photographie</title></head>" );
  101.       // La fonction qui attend que l'image soit chargée et affichée pour redimensionner la fenêtre à la bonne taille
  102.       wPopup.document.write("<body bgcolor='#F1F0C0'>" );
  103.       wPopup.document.write("<table align='center' cellpadding='0' cellspacing='0' border='1'>" );
  104.       wPopup.document.write("<tr>" );
  105.       wPopup.document.write("<td align='center' valign='middle' height='"+img_h*1+"'>" );
  106.       wPopup.document.write("<img src=' "+tab_images_max[current_max]+" ' border='0' height='"+img_h*1.75+"' >" );
  107.       wPopup.document.write("</td>" );
  108.       wPopup.document.write("</tr>" );
  109.       wPopup.document.write("</table>" );
  110.   wPopup.document.write("<br><center><a href='javascript: self.close()'><font color='#000000'>Fermer la fenêtre</font></a> - <a href='javascript:window.print()'> <font color='#000000'>Imprimer cette photo</font></a></center>" );
  111.       wPopup.document.write("</body></html>" );
  112. }
  113. <!--------------fonctions qui gère le déplacements des miniatures dans le calque---------------->
  114. <!---------------------------------------------------------------------------------------------->
  115. function deplaceCalqueDe(idCalque,stepX,stepY)
  116. {
  117.   calqueStyle = styleCalque(idCalque);
  118.   calqueStyle.left = parseInt(calqueStyle.left) + stepX;
  119.   calqueStyle.top = parseInt(calqueStyle.top) + stepY;
  120. }
  121. function styleCalque(idCalque)
  122. {
  123.   if (document.all) calqueStyle = document.all[idCalque].style;
  124.   if (document.layers) calqueStyle = document.layers[idCalque];
  125.   if (document.getElementById) calqueStyle =
  126.   document.getElementById(idCalque).style;
  127.   return calqueStyle;
  128. }
  129. function defileCalqueMot(idCalque,clipTop,clipBottom,direction)
  130. {
  131.   pas = pas + (10*direction);
  132.   deplaceCalqueDe(idCalque,0,(10*direction));
  133.   if (document.layers)
  134.   {
  135.     styleCalque(idCalque).clip.top = clipTop - pas;
  136.     styleCalque(idCalque).clip.bottom = clipBottom - pas;
  137.   }
  138.   else styleCalque(idCalque).clip = "rect("+(clipTop-pas)+",auto,"+(clipBottom-pas)+",auto)";
  139.   if (okDefile == 1)
  140.   setTimeout("defileCalqueMot('"+idCalque+"',"+clipTop+","+clipBottom+","+direction+" )",100);
  141. }
  142. function defileCalque(idCalque,clipTop,clipBottom,direction)
  143. {
  144.   okDefile = 1;
  145.   defileCalqueMot(idCalque,clipTop,clipBottom,direction);
  146. }
  147. function stopDefile()
  148. {
  149.   okDefile = 0;
  150. }
  151. okDefile = 0;
  152. pas = 0;
  153. </script>
  154. <!-------------récupération des photos dans la gestion des calques------------------------------>
  155. <!---------------------------------------------------------------------------------------------->
  156. <script language="JavaScript">
  157.       document.write("<table id='table_img_max' border='0' width='100%' align='center'>" );
  158.         document.write("<tr>" );
  159.           document.write("<td align='right'><img id='img_max' border='0' src='"+tab_images_max[current_max]+"' height='"+img_h+"' onClick='lancer()'></td>" );
  160. document.write("<td>" );
  161. document.write("<table align='center'>" );
  162. document.write("<tr>" );
  163. document.write("<td align='right'>" );
  164. document.write("<div ID='scrollCalque' STYLE='position:absolute;top:40px;left:720px;width:200;clip:rect(0,200,350,0)'><img id='img_min1' src='"+tab_images_min[current_min]+"' height='90'><img id='img_min2' src='"+tab_images_min[current_min+1]+"' height='90'><img id='img_min3' src='"+tab_images_min[current_min+2]+"' height='90'><img id='img_min4' src='"+tab_images_min[current_min+3]+"' height='90'><img id='img_min5' src='"+tab_images_min[current_min+4]+"' height='90'></div>" );
  165. document.write("</td>" );
  166. document.write("</tr>" );
  167. document.write("</table>" );
  168. document.onselectstart=new Function ("return false" );
  169. </script>
  170. <!---------------------------------gestion du défilement des miniatures------------------------->
  171. <!---------------------------------------------------------------------------------------------->
  172. <table align="center" >
  173. <tr>
  174. <td width="200" align="left">
  175. <A HREF="#" onMouseOver="defileCalque('scrollCalque',0,350,-1)" onMouseOut="stopDefile()"><IMG  SRC="scrollup.gif" border=0></A></td>
  176. <td width="200" align="center"><A HREF="#" onMouseOver="defileCalque('scrollCalque',0,350,1)" onMouseOut="stopDefile()">    <IMG  SRC="scrolldown.gif" border=0></A></td></tr></table>
  177. </td></tr></table>
  178. </body>
  179. </html>

Reply

Marsh Posté le 16-05-2006 à 20:57:17    

hummm du cacascript mélangé dans le PHP !!!
délicieux

Reply

Marsh Posté le 16-05-2006 à 20:58:47    

Reply

Marsh Posté le 16-05-2006 à 21:23:29    


J'ai du bon caca dans ma cacatière

Reply

Marsh Posté le 16-05-2006 à 21:32:24    

Ah je viens de capter effectivement qu'il y a en plus du PHP mélangé dedans.

Reply

Marsh Posté le 17-05-2006 à 19:38:46    

bon etant donne que tt le monde s'en branle je me suis demerde mais j'ai qd meme une tite erreur ds le chargement des photos
ma fonction n'est apparement pas correcte puisqu'elle affiche seulement la première photo
 

Code :
  1. function affiche_img()
  2. {
  3. for(a=0;a<10;a++)
  4. { return ("<center><img src='"+tab_images_min[current_min + a ]+"' height='90'></center>" );
  5. }
  6. }


et l'endroit ou elle est appelee:
 

Code :
  1. document.write("<div ID='scrollCalque' STYLE='position:absolute;top:5px;left:770px;width:200;clip:rect(0,200,450,0)'>"+affiche_img()+" </div>" );


Reply

Marsh Posté le 17-05-2006 à 20:14:47    

normale bougre d'étron liquide
 
tu fait un return sur ta fonction :o, ce qui fait que tu sors de ta fonction au premier tour :o

Reply

Marsh Posté le 17-05-2006 à 20:21:19    

je dois le mettre ou mon return alors?

Reply

Marsh Posté le 17-05-2006 à 20:21:19   

Reply

Marsh Posté le 18-05-2006 à 08:59:21    

Code :
  1. function affiche_img()
  2. {
  3.   var tmp = "";
  4.   for(a=0;a<10;a++)
  5.   {
  6.     tmp += "<center><img src='" + tab_images_min[current_min + a ] + "' height='90'></center>";
  7.     // rappel de syntaxe juste au cas où : tmp += toto est identique à tmp = tmp + toto
  8.   }
  9.   return tmp;
  10. }


Message édité par Bidem le 18-05-2006 à 09:00:04
Reply

Marsh Posté le 21-05-2006 à 21:08:21    

merki bidem, voila alors ça marche bien ton script recupere bien les photos sinon j'ai essayé de faire la fonction pour que qd on clic sur une photo vignette elle apparaisse en gros a cote
ça marche presque sauf que c'est la dernière photo qui s'affiche a chaque fois
a mon avis c une tite erreur de merde
 
voici mon code:
 

Code :
  1. function affiche_img()
  2.            {
  3.            var codeHTML="";
  4.            for(i=0;i<tab_images_min.length-1;i++)
  5.               {
  6.               codeHTML+='<center><img src="'+tab_images_min[current_min+i]+'" height="90" '+
  7.                  'style="cursor:pointer" onclick="clic_img()"></center>';
  8.               }
  9.            return codeHTML;
  10.            }
  11.          
  12.     function clic_img()
  13.     {
  14.     for(i=0;i<tab_images_max.length-1;i++)
  15.     {
  16.      if(document.getElementById)
  17.        document.getElementById("img_max" ).innerHTML='<center><img src="'+tab_images_max[current_max+i]+'" height="'+img_h+'" onClick="lancer()" STYLE="cursor:pointer"></center>';
  18.        else
  19.           window.open(tab_images_max[current_max+i],"_blank" )
  20.     }
  21.     }
  22.     </script>
  23.     <!-------------récupération des photos dans la gestion des calques------------------------------>
  24.     <!---------------------------------------------------------------------------------------------->
  25.     <script language="JavaScript">
  26.           document.write("<table id='table_img_max' border='0' width='100%' align='center'>" );
  27.             document.write("<tr>" );
  28.           document.write("<td width=90>" );
  29.           document.write("</td>" );
  30.               document.write("<td align='right' height='"+img_h+"' align='center' width='600'><div id='img_max'><img id='img_max' border='0' src='"+tab_images_max[current_max]+"' height='"+img_h+"' onClick='lancer()' STYLE='cursor:pointer'></div></td>" );
  31.     document.write("<td>" );
  32.        document.write("<table align='center' border='0'>" );
  33.     document.write("<tr>" );
  34.     document.write("<td align='right'>" );
  35.     document.write("<div ID='scrollCalque' STYLE='position:absolute;top:5px;left:785px;width:200;clip:rect(0,200,450,0)'>"+affiche_img()+"</div>" );
  36.     document.write("</td>" );
  37.     document.write("</tr>" );
  38.     document.write("</table>" );
  39.     document.onselectstart=new Function ("return false" );
  40.     </script>

Reply

Marsh Posté le 05-06-2006 à 18:50:52    

rebonjour à tous,
 
voila, j'ai crée le diaporama dans lequel il est possible de rentrer différents paramètres dans un mini module "admin" avant de le lancer dans une fentre popup. ces paramètres sont situés dans un formulaire. on a par ex la temporisation entre chaque image, ... , et entre autre, une zone de texte ou l'on peut rentrer un message que l'on veut voir défiler dans une balise de type <marquee> par dessus le diaporama
 
il tourne nikel ya pas de soucis sauf que je rencontre un ptit soucis:
 
lorsque je lance mon diaporama une fois tous les paramtres rentrés, il tourne nikel mais je voudrais rajouter une fonctionnalité supplémentaire:
 
en fait je voudrais que l'on puisse modifier le texte en meme tps que le diaporama defile ds la popup plutot que de fermer la popup, changer le message, et de nouveau reouvrir la pop up
 
j'espere que vous avez bien tt compris
 
voici donc le code de la partie de mon formulaire correspondant à la zone de texte
 

Code :
  1. <input type="text" name="commenta" cols="35" rows="5" value="votre texte ici" size="46">


 
 
la, le code de la partie de ma popup qui recupere le texte du formulaire et qui l'affiche ds le bandeau defilant:
 

Code :
  1. <!--bandeau defilant--> wPopup.document.write('<marquee style="position:absolute">'+window.document.settings.commenta.value+'</marquee>');


 
en fait le truc c'est que je sais pa si faut passer par une fonction ou bien alors employé des variables genre 'onchange' ou 'refresh'...
si vous avez des idées je suis preneur
 
merci d'avance

Reply

Marsh Posté le 05-06-2006 à 19:34:14    

Tout jeter ton caca à la poubelle


---------------
Blablaté par Harko
Reply

Marsh Posté le 05-06-2006 à 23:30:39    

c bien t intelligent toi heureusement que ya des gens comme toi pour polluer les forums autrement on s'ennuirait

Reply

Marsh Posté le 06-06-2006 à 08:45:57    

sur le onchange du input
il ne faut pas faire un document.write (ce qui aurait pour effet de reecrire dans le fenetre (et c'est crade)
 
il faudrait poser un id sur l'élément dans lequel tu veux ecrire (dans la popup) genre
<div id="montexte"></div>
 
et ensuite un simple code sur onchange :  
<input type="text" name="commenta" cols="35" rows="5" value="votre texte ici" size="46" onchange="wPopup.document.getElementById('montexte').innerHTML=this.value">
 
bien sur le meilleur serait de passer par une fonction qui teste aussi si Wpopup existe.
 
ton code il est caca pour la simple et bonne raison que tu creer ta popup à coup de document.write (du caca par excellence)
 
le meilleur étant d'avoir déjà une page en HTML existante dans laquelle tu ne modifie que ce qui doit etre modifié.
 
c'est plus simple


---------------
Blablaté par Harko
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed