你现在的位置 -> 云 -> flash

Javascript与SWF交互

星期四, 七月 1st, 2010

最近在做Flash与Javascript上传控件,但是发现Flash还真是问题多多,现在总结一下,留备忘,有些是网上找来的,已经不知道作者是谁了… … Javascript和swf在网页中交互一般可有以下几种情况: 1.swf和这些调用的javascript在同域 2.swf和这些调用的javascript在不同域,比如加载远程的swf然后call别地方的服务 对于swf跨域call服务的问题,可同过crossdomain.xml配置解决。 但对于加载远程的swf,默认情况下,根本不能将里面的方法成功注册为向javascript公开的方法,一般会报此类错误: a) SecurityError: Error #2060: 安全沙箱冲突:ExternalInterface ,调用者 remote.com/test.swf(所加载的远程swf) 不能访问 127.0.0.1(本机的一个服务) at flash.external::ExternalInterface$/_initJS() at flash.external::ExternalInterface$/addCallback() … b) 错误: uncaught exception: Error calling method on NPObject! [plugin exception: Error in Actionscript. Use a try/catch block to find error.] 解决办法 对于a错误,是因为远程的swf加载到本地后没有权限去访问当前html文档,对于这个我们只需要在输出swf的时候设置 allowScriptAccess 属性,一般设置为always.即可解决。 对于b错误,是因为默认actionscript中不允许向将方法注册到不同域的 html文档中, 对于这个我们只需要在as中加一下代码即可解决: import flash.system.Security; Security.allowDomain(“*”); Security.allowInsecureDomain(“*”);

分类

随机作品

兽人-战士

一直都在寻找属于自己与族人的那片天地,但是却发现在这里所有的一切都不属于我们。所有的一切都需要付出惨烈的代价!

三人众网站设计

一切从简,一切直观可用。

UAT9