Chrome不想让我直接在网址栏中访问swf文件中的javascript(我知道这不是最佳做法,但这就是我想要完成的事情):
假设:
/file.swf?cmd=alert();
使用以下代码(代码段):
flash.external.ExternalInterface.call("eval", cmd);
这仅适用于Firefox,而不适用于Chrome。我正在采用这种方法,因为在chrome中,actionscript 2运行JS的方法是使用getURL(“Javascript:....,但这不再适用于Chrome。
有没有解决方法(通过直接在浏览器中调用文件而不是嵌入页面?) - 我有我的理由!
答案 0 :(得分:1)
尝试创建代理'eval'功能的自定义函数。 在JS中试试这个......
function exec_code( $value ) {
window.eval( $value );
}
......在AS中。
var value:String = "[JavaScript Code to execute]";
if ( ExternalInterface.available ) ExternalInterface.call( 'exec_code', value );