views:

1278

answers:

1

Given that there is a global javascript variable on my web page named myVar, how can I access the value of the variable myVar from within my flash movie using javascript?

I see plenty of examples of using external interface in order to execute javascript from actionscript, but I am unable to find examples of returning values back into the flash movie using actionscript.

Thanks in advance. I hope my question is clear enough.

+4  A: 

ExternalInterface works by allowing JavaScript to invoke an ActionScript function in the movie, and vice-versa. You can optionally receive a return value back from the invoked function. Here's a very simple example:

JavaScript:

<script language="JavaScript">
    function getMyVar()
    {
        return myVar;
    }
</script>

Flash/AS:

import flash.external.ExternalInterface;
var result:string = ExternalInterface.call("getMyVar");
Rex M
Nice, that's what I am trying to do right now, except I am passing the name of the variable to the getMyVar function and then returning this[myVarName]... I think this method is going to work.Thanks!
Rafe
This did in fact solve my problem. Here's what I used in javascript:function returnVar(varName) { return this[varName]; }and in ActionScript 3:var jsVariableValue = ExternalInterface.call("returnVar","jsVariableName");
Rafe
Sounds like this could also work with AJAX and JSON for getting data to flash?
jerebear
@jerebear, except that AS has functions for even broader data retrieval.
Tracker1