我在使用Javascript恢复Flash文件方面遇到了很大问题。
Flash文件加载,视频设置为自动播放false
。出于某种原因,任何Javascript都无法识别AS3功能。它一直说这个功能是未定义的。 e.g。
function getFlashMovie(movieName) {
var isIE = navigator.appName.indexOf("Microsoft") != -1;
return (isIE) ? window[movieName] : document[movieName];
}
function callToActionscript(str)
{
getFlashMovie("video").sendToActionscript(str);
}
sendToActionscript
是undefined
。
任何帮助都会很棒。
由于 标记
答案 0 :(得分:1)
要使用javascript播放视频,您需要做三件事。
首先在flash文件中设置actionscript方法,例如:
import flash.external.ExternalInterface;
// create the callback to allow the js to call the method
ExternalInterface.addCallback("playMyVideo", playMyVideo);
function playMyVideo():void
{
video.play();//where video is the name of the video component
}
接下来创建你的javascript函数来调用AS方法:
function getFlashMovie(movieName) {
var isIE = navigator.appName.indexOf("Microsoft") != -1;
return (isIE) ? window[movieName] : document[movieName];
}
//js function to call the AS3 method
function callToActionscript()
{
//NB this is the name of the swf in the HTML and not the video component
getFlashMovie("mySWF").playMyVideo();
}
最后,您需要允许swf与HTML页面中的Javascript进行通信。必须设置allowScriptAccess参数。默认情况下,它设置为“sameDomain”,仅当SWF与主机网页位于同一子域时才允许脚本。将此设置为“always”允许所有脚本从SWF中调用。