在使用swfobject + jquery的时候突然发现了一个SecurityError: Error #2060,
开始的时候由于Flash的报错信息不是特别准确,因此怀疑是某一个ExternalInterface写错了,调查后发现似乎不是这么回事,
经过修改了几个方案后,发现问题依旧...
所以不得不重视起来,具体去Adobe doc那边查了一下,发现似乎与swf本身传入的参数有关系。
具体错误信息如下:
SecurityError: Error #2060: 安全沙箱冲突:ExternalInterface ,调用者XXXXXX
at flash.external::ExternalInterface$/_initJS()
at flash.external::ExternalInterface$/addCallback()
解决方法:
由于使用了swfobject,因此需要设定一个swf的参数allowScriptAccess
只需要在输出swf的时候设置allowScriptAccess 属性为always即可解决。