1

看:

var mychart = new FusionCharts("http://localhost/xx.swf")

它来自我的本地计算机,它工作正常!!

但另一个

var mychart = new FusionCharts("http://192.168.1.44/xx.swf")

这是来自另一台电脑。这没用。

为什么 ?

这。

4

1 回答 1

0

理想情况下它应该工作。但是,如果您从本地文件系统运行 HTML 并尝试访问远程 URL,许多浏览器(如 Chorme)将阻止此访问。

您需要检查浏览器的网络调试工具以查看 SWF 是否正确加载。

同样,由于 SWF 存在于不同的域中,因此 SWF 将不允许跨域 JavaScript 到 SWF(反之亦然)脚本。可以分两步处理:

  1. 从另一个域加载 SWF 时,您需要在该服务器中保留一个跨域策略文件,同时声明允许访问哪个域。

  2. 如果您有图表的 Flash 源代码,则需要在图表的动作脚本代码 (AS2) 中添加允许所有域并重新编译并重新使用。

System.security.allowDomain ("*");

参考:

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/2/help.html?content=00001490.html

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/2/help.html?content=00000466.html

于 2012-12-05T10:32:58.693 回答