Flash播放器不允许脚本。

3
我对Flash和ActionScript还有点陌生,我认为我的问题与安全有关。问题是,我尝试在ActionScript 2.0中使用按钮代码(必须使用2.0)。
on(rollOver)
{
    getURL("javascript:someFunction();","_self");
}

这段代码应该可以工作,其他人使用它也没问题 =)
在你说我把它放错地方之前,请注意我已经将它放在按钮中。此外,当我尝试在Flash CS5中使用CTRL + ENTER播放电影时,它能够正常工作。但是当我嵌入我的.swf文件后,会出现类似下面的消息:
the aplication is trying to access page...see parameters for flash player

对不起,翻译得不太好。
我也尝试了这段代码:
on(rollOver)
    {
        getURL("http://www.something.com","_self");
    }

"它成功了。
嵌入代码:"
        <object width="100%" height="60">
                <PARAM NAME="quality" VALUE="high">
                <PARAM NAME="wmode" VALUE="opaque" >
                <PARAM name="AllowScriptAccess" VALUE="always" >
                <EMBED src="small.swf" width="100%" height="60" wmode="opaque" quality="high" AllowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash">
                </EMBED>
                <noembed></noembed>
        </OBJECT>

我应该补充说明,我对swf文件将要托管的位置或类似的事情没有任何控制权。这不是我的swf文件。我能做的就是通过JavaScript操纵它,为此,我需要得到精确的代码才能工作。

哦,但它确实访问了something.com/,而不是访问javascript:alert("hello world");。 - Olga
2个回答

3

如果你想从ActionScript代码中调用JavaScript函数,可以使用在ActionScript中提供的ExternalInterface API。请查看Flash帮助,你会找到适当的ExternalInterface代码示例。


0

这个有效 =) 谢谢...我现在会尝试进一步调查,以便了解原因。 - Olga

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接