views:

276

answers:

3

Is it possible to trigger for example flash uploading button via javascript?

For example I have made empty image wrappers and by clicking on them, they trigger flash button to open as select window.

Thanks!

+1  A: 

Yes, through the ExternalInterface class.

Robusto
+2  A: 

Assuming you have a flash function in your SWF, like this:

// AS3 code in swf
function myfunction():void
{
    // Do something useful
}

You can expose it to JavaScript in a page that contains your SWF like this:

// AS3 code in swf
ExternalInterface.addCallback("myfunction", myfunction);

Then from JavaScript you can call it like this:

// JavaScript code in browser
var swf = window.getElementById("myswf");
swf.myfunction();

In your case you can invoke the code you want to run from myfunction().

Josh Knauer
Thanks i'll look into it.
Beck
A: 

Although the ExternalInterface makes it possible to call ActionScript functions from JavaScript, I don't think it will work for opening a file browser and uploading files.

For security reasons, the file upload functions in Flash Player can only be triggered by user interaction, like clicking a button, in Flash. This was introduced with Flash Player 10, and broke a lot of file upload solutions, like SWFUpload and others:

http://www.bit-101.com/blog/?p=1382

Lars