I am using the flash library ExternalInterface to call the thickbox jquery plugin. Now it works great, when the link in flash is clicked it calls the thickbox and everything works fine. When clicked I have the flash movie that is playing stop and wait for the thickbox to be closed. Now with this when closed I cannot get IE to start playing the movie again. In firefox it works great. Thats why I think there is a problem with my javascript not flash. I have the following in the page for javascript to access my object: var flash; window.onload = function() { if(navigator.appName.indexOf("Microsoft") != -1) { flash = document.loader; }else { flash = window.document.loader; } } Code (markup): Also I added the call in the thickbox close to call the function in actionscript. flash.g(); Code (markup): As I said, it work perfectly in firefox but IE is giving me a pain. Ive posted on another forum but no one responded. Please help.
Yea, this can be a little tricky to get up and going- but basically it's a two part process: 1) Your flash app needs to register the method or function name with your browser. 2) Your javascript needs to find and store the proper flash container. So let's start backwards- for the javascript to work you will need to give your embedded flash an ID, I call mine in this example 'theFlash'. Then you will use the javascript command getElementById to store the flash container into a variable. Basically it's this: var theFlash = document.getElementById("theFlash"); Code (markup): Now once you've run that line you have a variable called theFlash that you use to call your functions, like: theFlash.methodToRun(); Code (markup): And that's basically the javascript side of it. The one you were using is not cross browser compatible, and the one we are using here is compatible with IE, FF, and Safari (more or less). Now for the flash- in your .fla you will need to first import the necessary library's to call to the external interface, then setup a call back method. I'll give you the code here then explain it: import flash.external.*; var connection = ExternalInterface.addCallback("methodToRun", null, myMethod); var myMethod:Function = function():Void{ // And the execution you need goes here of course. } Code (markup): The first line imports the libs your going to need. The second creates the call back and stores it in a variable called 'connection' for any later use. Then the 'addCallback' method takes the name of the method JS will call, an instance object- which you can usually always leave as null, and what method to run. Simple as that~ ( Heh, went on a rant there, prolly more info than you needed, but I hope it helps! xD )