2010-03-18 67 views

回答

7

是的,通过ExternalInterface类。

您可以从Flash电影中调用Javascript并获取有关您的心脏所需页面的任何公共信息。

附录

展望这一年半以后在,我决定增加一些例子:

说你有你这样的客户端页面上的JS功能:

function foo(bar,type) { 
    // do something with bar and type 
} 

你可以这样称呼它(使用AS3):

ExternalInterface.call(foo, bar, type); 

请注意,函数名称是第一个对象,随后会依次列出参数。

为了揭露Flash影片的方法为Javascript之外,你会在您的Flash或Flex(再次,AS3)做到这一点:在页面上

application1_applicationCompleteHandler(event:Event) { 
    // the app has finished loading, so do whatever we 
    // have to do on load, plus add that callback 
    ExternalInterface.addCallback(foo, bar); 
} 

public function bar(arg1, arg2) : void { 
    // do something with arg1 and arg2 
} 

在JavaScript调用它像这样(其中为myMovie是SWF的ID):

myMovie.foo(anArg, anotherArg); 

addCallback方法中,第一个参数是该函数的外部名称,第二个参数是将调用关闭。

+0

如何从dom对象获取属性?例如:'

'?我如何获得数据属性? – Sisir 2013-03-30 12:46:56

3

不是我所知道的,但他们可以在包含文档中执行javascript,这显然可以访问DOM本身。

+0

如果我在父文档中有一些AJAX调用,我可以以某种方式与Flash对象进行通信吗? – devviedev 2010-03-18 20:16:05