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

  FORUM HardWare.fr
  Programmation
  Flash/ActionScript

  Galerie d'image AS3 / Problème sous Firefox / Mac

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Galerie d'image AS3 / Problème sous Firefox / Mac

n°2022729
Loiro
Posté le 13-09-2010 à 20:36:05  profilanswer
 

Bonsoir !

 

Voilà, je me décide à poster ici suite à un agaçant problème...
Je réalise un site en html, avec, pour certaines pages, une galerie d'images en As3.

 

Ma galerie est faite en suivant ce tuto :
http://www.snoupix.com/galerie-d-i [...] al_27.html
C'est une galerie flash, avec images externes, et un xml pour définir le chemin des images/minatures/légendes.

 

Mon problème est le suivant : Sous pc, quel que soit le navigateur, aucun problème, ma galerie s'affiche, et un clic sous une miniature affiche l'image en grand.
Jusque-là donc, aucun souci.
Le truc est qu'une fois sous mac, avec firefox (pas pu tester sous d'autres navigateurs), ma galerie s'affiche, mais un clic sur une miniature ne déclenche RIEN.
C'est fâcheux.

 

Bref, je suis tout à fait paumé, d'autant plus que si le même mac ouvre le .swf, tout fonctionne à merveille...
C'est donc, je suppose, l'intégration au html qui foire..? Ou quelque chose que le plug-in firefox digère mal.

 

Quoi qu'il en soit, voilà le code d'intégration du swf de ma page html :

 
Code :
  1. <div id="flash">
  2.       <object type="application/x-shockwave-flash" data="galerie.swf" width="750" height="417">
  3.       <param name="movie" value="galerie.swf" />
  4.       </object>   
  5. </div>
 

et mon code AS3 (le même que le tuto, simplifié, avec des effets en moins) :

 
Code :
  1. /**************************************************
  2.   _________                          .__       
  3. /   _____/ ____   ____  __ ________ |__|__  ___
  4. \_____  \ /    \ /  _ \|  |  \____ \|  \  \/  /
  5. /        \   |  (  <_> )  |  /  |_> >  |>    <
  6. /_______  /___|  /\____/|____/|   __/|__/__/\_ \
  7.         \/     \/             |__|            \/
  8. **************************************************
  9. http://www.snoupix.com
  10. */
  11.     import flash.net.URLLoader;
  12.     import flash.net.URLRequest;
  13.     import fl.containers.UILoader;
  14.     import fl.controls.ProgressBar;
  15.     import fl.transitions.Tween;
  16.     import fl.transitions.easing.*;
  17.     import fl.transitions.TweenEvent;
  18.     import flash.events.*;
  19.     import flash.text.*;
  20.     import flash.filters.*;
  21.        
  22.     //Constantes   
  23.     var dossierImage:String = 'images/';
  24.     var dossierImageMini:String = 'images/min/';   
  25.        
  26.        
  27.     //Chargeur qui téléchargera notre fichier XML   
  28.     var chargeur:URLLoader = new URLLoader ();
  29.     //objet URLRequest qui contient l'url du fichier XML:
  30.     var adresse:URLRequest = new URLRequest ("galerie.xml" );
  31.                    
  32.     chargeur.load(adresse);
  33.     chargeur.addEventListener(Event.COMPLETE, finDuChargementXML);
  34.    
  35.    
  36.     //Variable contenant le texte alternatif
  37.     var alt:String;
  38.    
  39.     /*Style utilisé pour le texte Alternatif*/
  40.     var formatTitre:TextFormat = new TextFormat;
  41.     formatTitre.color = 0x5f4f54;
  42.     formatTitre.size = 11;   
  43.     formatTitre.font = 'Verdana';
  44.     formatTitre.align = 'right';
  45.    
  46.     //Champ texte pour le texte alternatif
  47.     var texteAlt:TextField = new TextField();
  48.                     texteAlt.text = '';
  49.                     texteAlt.x = 350;
  50.                     texteAlt.y = 400;
  51.                     texteAlt.width = 400;
  52.                     this.addChild(texteAlt);
  53.    
  54.     /*Une fois que le fichier XML est chargé...*/
  55.     function finDuChargementXML(evt:Event):void{
  56.             //Objet XML
  57.             var monXML:XML = new XML(evt.target.data);
  58.             //UILoader qui contiendra l'image originale
  59.             var photoPrincipale:UILoader = new UILoader();
  60.                         photoPrincipale.source = dossierImage+monXML.image[0].attribute("src" );
  61.                         photoPrincipale.x = 180;
  62.                         photoPrincipale.y = 0;
  63.                         photoPrincipale.scaleContent = false;
  64.                         photoPrincipale.autoLoad = true;
  65.            
  66.            
  67.             //Variable qui contiendra l'image qui est selectionnée
  68.             var select:String;
  69.            
  70.            
  71.             texteAlt.text = monXML.image[1].attribute("alt" );
  72.             texteAlt.setTextFormat(formatTitre);
  73.            
  74.             //On attache le Loader à la scene
  75.             this.addChild(photoPrincipale);
  76.            
  77.             /*Pour les miniatures*/
  78.             for(var i:String in monXML.image) {
  79.                 var uil:UILoader = new UILoader();
  80.                         uil.source = dossierImageMini+monXML.image[i].attribute("src" );
  81.                         uil.buttonMode=true;
  82.                         uil.name = i;
  83.                         uil.x = 0;
  84.                         uil.y = 0;
  85.                         uil.y += int((int(i)/3))*60;
  86.                 if(int(i)%3!=0){
  87.                         uil.x += (int(i)%3)*60;
  88.                 }
  89.                
  90.                         uil.width = uil.height = 50;
  91.                         uil.alpha = 0.5;
  92.                         uil.scaleContent= true;
  93.                         uil.autoLoad = true;
  94.                        
  95.                         //Les écouteurs sur les miniatures
  96.                         uil.addEventListener(MouseEvent.CLICK,clicImage);
  97.                         uil.addEventListener(MouseEvent.MOUSE_OVER,overImage);
  98.                         uil.addEventListener(MouseEvent.MOUSE_OUT,outImage);
  99.                 this.addChild(uil);
  100.         }
  101.            
  102.         /*Quand on clique sur une miniature...*/
  103.         function clicImage(e:Event):void{
  104.             //e.currentTarget.name correspond à la position de l'image
  105.             //Si l'image sur laquelle on a cliquée est déjà selectionnée, il ne se passe rien....
  106.             //if(select == monXML.image[e.currentTarget.name].attribute("src" )){
  107.                 //return;
  108.             //}
  109.            
  110.             select = monXML.image[e.currentTarget.name].attribute("src" );
  111.             alt = monXML.image[e.currentTarget.name].attribute("alt" );
  112.                
  113.                
  114.             var myTweenA:Tween = new Tween(photoPrincipale, "alpha", Strong.easeOut, 1, 0, 0.5, true);
  115.             var myTweenPPA:Tween = new Tween(photoPrincipale, "alpha", Strong.easeIn, 1, 0, 0.5, true);
  116.             myTweenA.addEventListener(TweenEvent.MOTION_FINISH, changeImage);
  117.            
  118.         }
  119.        
  120.         /*Quand on veut changer d'image (logiquement après avoir cliqué sur une miniature)*/
  121.         function changeImage(e:Event):void{
  122.             //On change la source de l'image
  123.             photoPrincipale.source = dossierImage+select;
  124.            
  125.             //On change le texte descriptif
  126.             texteAlt.text = alt;
  127.             texteAlt.setTextFormat(formatTitre);
  128.            
  129.             //Et la photo arrive de façon élégante
  130.             var myTweenPPA2:Tween = new Tween(photoPrincipale, "alpha", Strong.easeOut, 0, 1, 0.5, true);
  131.            
  132.         }
  133.        
  134.         /*Quand on passe la souris sur une miniature...*/
  135.         function overImage(e:Event):void{
  136.             //Effets cools de transitions               
  137.             var myTweenMA2:Tween = new Tween(e.currentTarget, "alpha", Strong.easeOut, 0.5, 1, 1, true);
  138.         }
  139.        
  140.         /*Quand on quitte la miniature*/
  141.         function outImage(e:Event):void{
  142.             //Effets cools de transitions
  143.             var myTweenMA:Tween = new Tween(e.currentTarget, "alpha", Strong.easeOut, 1, 0.5, 1, true);
  144.            
  145.            
  146.         }
  147. }
 

Voilà. pour finir, un petit lien pour tester l'erreur :
http://secretdecour.com/temp2/parutions.html

 


En remerciant d'avance ceux qui auront le temps de se pencher sur mon problème... :)


Message édité par Loiro le 13-09-2010 à 21:06:42
mood
Publicité
Posté le 13-09-2010 à 20:36:05  profilanswer
 

n°2022924
Zedlefou
In cabbage we trust !
Posté le 14-09-2010 à 16:19:54  profilanswer
 

Le code d'intégration est vraiment ultra basique !
Essaie plutot de le faire avec SWFObject ...


---------------
Jeu de simulation Boursière - Version BETA - https://www.facebook.com/wildstocks
n°2022954
Loiro
Posté le 14-09-2010 à 19:22:00  profilanswer
 

Zedlefou a écrit :

Le code d'intégration est vraiment ultra basique !
Essaie plutot de le faire avec SWFObject ...


 
Hello,
Oui, je sais pour le code d'intégration, en fait je pensais que le problème venait de là, alors j'ai tenté la méthode Satay (http://www.alistapart.com/articles/flashsatay)
Avant j'avais tenté avec le code de la démo du tuto dont je suis parti :  
 

Code :
  1. <div id="flash">
  2. <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,65,0" width="800" height="450">
  3. <param name="movie" value="galerie.swf">
  4. <param name="quality" value="high">
  5. <embed src="galerie.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="800" height="450">
  6. </embed>
  7. </object>
  8. </div>


(démo ici : http://www.snoupix.com/demo/galerieAS3/)
 
La démo, d'ailleurs, marche sur mac...
Un mystère.
 
 
Pas tenté avec SWFObject, je vais essayer ça. :)
Merciiiiii !


Message édité par Loiro le 14-09-2010 à 19:30:06
n°2022962
Zedlefou
In cabbage we trust !
Posté le 14-09-2010 à 21:10:19  profilanswer
 

Lol, ton truc date de 2002, en gros ça vaut plus rien.
 
Essaie avec SwfObject.


---------------
Jeu de simulation Boursière - Version BETA - https://www.facebook.com/wildstocks
n°2025210
Loiro
Posté le 26-09-2010 à 17:09:20  profilanswer
 

Oulà, oui en effet !
J'avais pas vu ça !  :ouch:  
 
 
Sinon en passant par SWFObject ca marche nickel, mille mercis !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Flash/ActionScript

  Galerie d'image AS3 / Problème sous Firefox / Mac

 

Sujets relatifs
probleme d'upload d'un wordpressProblème linguistique : champs ou colonnes ?
probleme page PHP sous internet explorerprobleme intro flash
Problème communication SOCKET Réseau TCP/IPproblème avec xcopy d'un dossier
Problème d'insertion d'image sous LaTeXProblème remplissage Form par recordset
Plus de sujets relatifs à : Galerie d'image AS3 / Problème sous Firefox / Mac


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