【发布时间】:2013-03-20 11:49:05
【问题描述】:
我一直在这里,找不到答案。我有一个位于 HTML 页面中的 .swf,我试图从 javascript 调用其中的一个函数。我可以从 flash 与 javascript 对话,但我无法让它重新对话。我知道我正确地定位了对象,因为我在其上使用了 console.log() 并确认了它的目标。
我正在从 Flash 触发测试,从 .swf 中调用一个 javascript 函数,并让该函数调用内部 Flash 函数。
Flash 代码:
//adds callback
ExternalInterface.addCallback("sendToFlash", flashTalkedTo);
//function called by the callback
public function flashTalkedTo():void{
//runs another function in javascript to log a string
ExternalInterface.call("callMe")
}
//calls javascript that tries to talk to Flash
ExternalInterface.call("catchFromFlash")
Javascript 代码:
//function called by Flash that initiates
function catchFromFlash(){
talkToFlash()
}
//function that tries to talk to flash
function talkToFlash(){
document.getElementById('Noodleverse').sendToFlash()
}
//function called by Flash in the end to confirm call made
function callMe(){
console.log("Call Me")
}
任何帮助都有效,谢谢!
【问题讨论】:
-
哪个 HTML 元素具有
Noodleverseid?显示粗略的 HTML 结构会有所帮助。 -
并且还在
talkToFlash内执行console.log(document.getElementById('Noodleverse'))以确认它确实在运行,并且它找到了正确的元素。
标签: javascript flash function externalinterface