2010-01-09 8 views
0

Existe-t-il un moyen d'appeler la fonction MouseEvent dans as3 à partir de JavaScript? J'ai un bouton HTML et un objet swf, j'ai besoin d'envoyer une requête POST de swf en cliquant sur le bouton HTML.Appelez la fonction AS3 MouseEvent à partir de JS

+0

Dans quelle direction voulez-vous aller? Cliquant dans Flash en utilisant JS ou en cliquant sur html en utilisant Flash? – grapefrukt

+0

Je veux cliquer en html et envoyer une requête POST en flash – Alex

Répondre

3

Vous pouvez le faire avec l'API ExternalInterface.

Dans votre objet flash, appelez comme suit.

ExternalInterface.addCallback("someAPIMethod", anActionScriptMethod); 

function anActionScriptMethod():void 
{ 
    // handle POST 
} 

Puis dans votre JavaScript, vous devez obtenir l'objet de votre flash intégré et d'appeler le « someAPIMethod » rappellerez que vous avez défini dans votre flash.

votre balisage peut ressembler à quelque chose comme ...

<button id="someId" value="Click Me" onclick="onButtonClick();">Click Me</button> 

Votre JS peut ressembler à ...

function onButtonClick() 
{ 
    // get the flash object and call the callback method 
    flashObj(name).call("someAPIMethod"); 
} 

// this probably won't work in all browsers, search the net for a better function. 
function flashObj(name) 
{ 
    if (window.document[name]) 
    { 
     return window.document[name]; 
    } 
    return document.getElementById(name); 
} 

il y aura probablement quelques réglages que vous devez faire à ce code, mais cela devrait vous donner une direction pour commencer.

Questions connexes