Bonsoir à tous,
j'ai un problème avec un flash contenant de l'ActionScript 3. Ce Flash fonctionne correctement sous Firefox et IE6, mais malheureusement pas sous IE7.
Je résume ce que je cherche à faire : j'ai une page HTML qui contient une carte de France en Flash découpée en régions cliquables. Lorsque le visiteur clique sur une des régions, le navigateur ouvre une nouvelle page HTML à laquelle sont transmises en POST des variables calculées directement dans mon Flash ou récupérées depuis le formulaire HTML via une fonction JavaScript.
Tout se passe bien avec Firefox et IE6, mais IE7 me retourne l'erreur suivante lorsque je clique sur l'une des régions de ma carte :
Cette erreur est apparemment souvent rencontrée au vu du nombre de réponses que renvoie Google, mais malheureusement je ne trouve pas pour autant mon bonheur... Je fais donc appel à vos compétences ! Voici mon code :TypeError: Error #1009: Il est impossible d'accéder à la propriété ou à la méthode d'une référence d'objet nul.
at zzzzPost_fla::MainTimeline/sourisUp()
1 - Dans la page HTML pour y insérer le Flash, avec un traitement spécifique pour IE et un second pour les autres navigateurs :
2 - Dans le Flash lui-même (ActionScript 3) pour rediriger le visiteur vers une nouvelle page lorsqu'il clique sur la carte en Flash :
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 <!--[if IE]> <object type="application/x-shockwave-flash" data="./flash/zzzzPost.swf" width="350" height="293.8" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="ma_carte"> <param name="movie" value="./flash/zzzzPost.swf" /> <param name="wmode" value="transparent" /> <param name="quality" value="high"> <p><a href="http://get.adobe.com/fr/flashplayer/">Télécharger gratuitement Adobe Flash Player</a></p> </object> <![endif]--> <!--[if !IE]> <--> <object class="objet" type="application/x-shockwave-flash" data="./flash/zzzzPost.swf" width="350" height="293.8"> <param name="movie" value="./flash/zzzzPost.swf" /> <param name="wmode" value="transparent" /> <param name="quality" value="high"> <p><a href="http://get.adobe.com/fr/flashplayer/">Télécharger gratuitement Adobe Flash Player</a></p> </object> <!--> <![endif]-->
En espérant que cela inspire quelqu'un, je ne vois pas ce qui peut avoir une valeur null là-dedans...
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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 import flash.net.URLRequest; import flash.net.URLVariables; import flash.net.URLRequestMethod; import flash.external.ExternalInterface; // Evenements déclenchés lorsqu'un clic sur l'objet est relaché. function sourisUp(evt:MouseEvent) { // Récupération du tableau retourné par la fonction JavaScript valeurElements(). var valeurElements:Array; valeurElements = ExternalInterface.call("valeurElements"); // Page PHP cible. var adresse:URLRequest = new URLRequest("./mapage.php"); // Variables à envoyer. var variables:URLVariables = new URLVariables(); variables.type_entite = typeEntite; variables.code_entite = codeEntite; variables.type_evenement = valeurElements[0]; variables.date_evenement = valeurElements[1]; // On passe les variables à l'adresse. adresse.data = variables; // Méthode d'envoi. adresse.method = URLRequestMethod.POST; // Envoi de l'URL. navigateToURL(adresse, "_self"); }
Merci d'avance !
Partager