Javascript: вызов функции javaScript из flash (swfObject)? - PullRequest
0 голосов
/ 29 февраля 2012

предположим, у меня есть объект с именем "data", в котором есть функция callBack с именем "closeItem", которая что-то делает.

Итак, у меня есть флэш-файл с кнопкой закрытия.по щелчку этого я вызываю эту функцию, которая закрывает этот элемент.

Итак, проблема в том, что?

Если я передаю эту "closeItemFunction" в качестве глобальной функции, это прекрасно работает.

но если передать эту функцию как «data.closeItem», это не сработает, если выдает какую-то ложную ошибку.

, поэтому я просто хочу спросить, что


"мигаетВызовите только функцию javascript gobal scoped " ??

Ответы [ 2 ]

2 голосов
/ 29 февраля 2012

Вы можете заключить JavaScript, который вы хотите выполнить, в анонимную функцию, которую вы объявляете и вызываете из ActionScript, например:

ExternalInterface.call("function() { data.closeItem(); }");

Может показаться немного странным, что функция вызывается, выполняется,с приведенным выше синтаксисом, это так, но если вы предпочитаете, вы можете сделать объявление и отдельный вызов более явным, например:

ExternalInterface.call("(function() { data.closeItem(); })()");
1 голос
/ 29 февраля 2012

Краткий ответ (iirc); "Да".

Возможно, можно обойтись по телефону

ExternalInterface.call("eval", "data.closeItem()")
...