Bonjour , je souhaiterais faire communiquer une fenêtre fille avec le javascript(ecmascript) de la fenêtre mère.

La fenêtre fille est ouverte de cette façon : echo '<a xlink:href="'.$file.'#'.$concept.'" target="'.$file.'" >';

Depuis cette fenêtre fille, j'arrive bien à accéder à la fenêtre mère contenant le svg... je peux faire des alert, prompt, etc ...

Par contre je n'arrive pas à faire appel à une fonction ou une variable que j'ai défini moi-même.

Pour le moment, voilà comment j'essaie de définir une variable Ecmascript dans la fenêtre mère :


<script type="text/ecmascript">
<![CDATA[

window.ma_variable = "kkk";
alert(window.ma_variable);

]]>
</script>


Le alert fonctionne bien ...

Voilà maintenant comment depuis la fenêtre fille j'essaie d'accéder à cette variable :


alert(window.parent.opener.ma_variable);


Et là j'obtiens un joli undefined Smiley decu

J'ai également essayé avec une fonction ... même résultat ... Après avoir essayé pas mal de choses ... là je sèche ...

Si vous avez une idée sur le problème, euh ben je suis preneur Smiley murf
Modifié par m@t (05 Feb 2006 - 10:48)
En procédant comme suit dans le document fils :

var mere = window.parent.opener.document;
		
for(i in mere)
       dest.innerHTML += i+" = "+mere[i]+"<p />";


J'arrive à obtenir les déifferentes fonctions et propriétés du document svg de la fenêtre mère:

isSameNode = function isSameNode() { [native code] }

lookupPrefix = function lookupPrefix() { [native code] }

isDefaultNamespace = function isDefaultNamespace() { [native code] }

lookupNamespaceURI = function lookupNamespaceURI() { [native code] }

isEqualNode = function isEqualNode() { [native code] }

getFeature = function getFeature() { [native code] }

setUserData = function setUserData() { [native code] }


Mais toujours pas de trace des fonctions que j'ai définies moi-même ....
Smiley decu [/i]