1

我有一个文件“test.swf”与 air 应用程序位于同一目录中,并且我有以下操作脚本...

var htmlLoader:HTMLLoader = HTMLLoader.createRootWindow(true, options,false, new Rectangle(0,0,1024, 768));
htmlLoader.loadString(***STRING****);

其中STRING是:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title></title>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
  <object type="application/x-shockwave-flash" width="1024" height="768"> 
        <param name="movie" value="app:/test.swf" />
        <param name="wmode" value="opaque" />
    </object>
</body>
</html>

知道为什么 test.swf 不显示吗?

我也试过<param name="movie" value="test.swf" /><param name="movie" value="/test.swf" />

注意: <param name="movie" value="http://location.on.web/test.swf" />确实有效,但我需要这个专门用于本地播放。

4

1 回答 1

2

默认情况下,使用loadString()方法加载的 HTML 不会放置在沙箱中以进行本地存储访问。要启用它,您需要先设置placeLoadStringContentInApplicationSandbox 属性

htmlLoader.placeLoadStringContentInApplicationSandbox = true;

是的,我确实认为这是整个 AS3 库中最长的属性名称。

于 2012-08-06T15:42:50.493 回答