-
-5 31
- 今日在调节他域的Flash文件时,发现页面老打不开。
估计问题就是出在网址上,用:SWFDecompiler软件Decompile了一下,发现地址表现为以下形式:
/index.html
嗯,修改地址为:
http://www.xesee.com/index.html
上传,清理缓存,问题依旧。
想到了Flash现在跨域规则较为严格,上GG找了下资料:
果不其然,就在页面上改了代码:使用 allowscriptaccess 使 Flash 应用程序可与其所在的 HTML 页通信。此参数是必需的,因为 fscommand() 和 getURL() 操作可能导致 JavaScript 使用 HTML 页的权限,而该权限可能与 Flash 应用程序的权限不同。这与跨域安全性有着重要关系。
也就是说如果swf在blog.80s.net.cn下,但是页面在fmail.80s.net.cn下,想用getURL或者fscommand调用页面中的js是不可以的,除非你将value设置为always
value参数说明:
always 允许随时执行脚本操作。
never 禁止所有脚本执行操作。
samedomain 只有在 Flash 应用程序来自与 HTML 页相同的域时才允许执行脚本操作。
所有 HTML 发布模板使用的默认值均为 samedomain。
默认是:<param name="allowScriptAccess" value="always" /><param name="allowScriptAccess" value="sameDomain" />
问题解决!
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

- 评论(0)
发表评论 TrackBack