2012-08-06 13 views
1

我坐在同一目錄中AIR應用程序文件「test.swf」,我有以下的動作......嵌入的SWF中的HTMLLoader帶固定運行

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" />的工作,但我需要這個專爲本地播放。

回答

2

默認情況下,使用loadString()方法加載的HTML未放置在本地存儲訪問的沙箱中。要啓用它,你需要設置placeLoadStringContentInApplicationSandbox property第一:

htmlLoader.placeLoadStringContentInApplicationSandbox = true; 

是的,我認爲是在整個AS3庫中的最長的屬性名稱。

+0

作品!儘管我還必須將SWF放入AIR包資源中 – davidkomer 2012-08-07 08:23:39