Вызов функции ASE MouseEvent из JS - PullRequest
0 голосов
/ 09 января 2010

Есть ли способ вызвать функцию MouseEvent в as3 из JavaScript? У меня есть кнопка HTML и объект SWF, мне нужно отправить запрос POST от SWF, нажав кнопку HTML.

1 Ответ

3 голосов
/ 10 января 2010

Вы можете сделать это с API ExternalInterface.

В вашем flash-объекте сделайте вызов, подобный следующему.

ExternalInterface.addCallback("someAPIMethod", anActionScriptMethod);

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

Затем в вашем JavaScript вам потребуется получить объект встроенной флэш-памяти и вызвать обратный вызов someAPIMethod, который вы определили в вашей флэш-памяти.

ваша разметка может выглядеть примерно так ...

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

Ваш JS может выглядеть как ...

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);
}

вероятно, будут некоторые изменения, которые вам нужно будет внести в этот код, но он должен дать вам некоторое руководство для начала работы.

...