Bonjour,
J'ai un souci que je n'arrive pas à résoudre avec une fonction javascript. Mon problème est assez spécifique car il inclut des éléments cartographiques en mode WEB.
Je m'explique, j'ai une fenêtre contenant une carte en mode web dans une iframe. Dans le page où se trouve ma carte je clique sur une ligne d'un listing (représentée géographiquement dans ma carte), me permettant d'ouvrir une autre fenêtre. Dans celle ci je peux mettre à jour des éléments géographique de la page parent. Avant d'ajouter un objet je pourrait vérifier par l'intermédiaire d'une fonction ou il se situe (j'utilise une fonction de géolocalisation). Mais cela ne fonctionne pas. Je pense qu'il doit y avoir un problème d'accès à cette fonction.
Voici une partie de mon code
fenêtre parent : la déclaration de la carte dans une i frame :
Code :
- <TD>
- <iframe src="/carte_opah/flash/" name="frameDM" id="frameDM" width="800" height="700"></iframe>
- </TD>
|
carte_opah/fash est le chemin de la carte
Dans le code de la fenêtre fille : j'ai déclaré la fonction permettant la localisation de l'objet
Code :
- <script>
-
- var parentWindow = window.opener;
-
- if (parentWindow && parentWindow.open && (typeof(parentWindow.closed)=="undefined" || !parentWindow.closed))
- {
- parentWindow.frameDM.mainMap.search('167.1372',{'type':'localisation','key':'primary','zoom':2,'zoomType':'X'});
- }
- </script>
|
Le problème vient peut être l'accès à l'iframe. j'ai utilisé window.opener (j'ai même testé avec self.opener).
ce qui est étrange c'est que lorsque j'utilise le debbuger de firefox et que dans la fenêtre espion je tape window.opener.frameDM.mainMap , il accède bien à la fonction "search". quand j'utilise cette fonction directement dans la fenêtre mère elle fonctionne bien et la localisation se produit
Au final je ne vois pas trop où peut se situer l'erreur.
Si qqu'un a une idée je suis preneur !
Merci
SD