使用SWFObject和ExternalInterface加载SWF与外部SWF文件的问题

时间:2010-04-06 01:12:38

标签: swfobject externalinterface

我在加载引用外部SWF文件的SWF时遇到问题......

如果HTML文件与使用以下代码的所有SWF位于同一文件夹中,则主SWF加载正常:

<script type="text/javascript" src="../js/swfobject.js"></script>
<script type="text/javascript">
    var flashvars = {};
    var params = { allowScriptAccess: "always" };
    params.quality = "high";
    params.wmode = "transparent";
    var attributes = {id:"IDofSWF", name:"IDofSWF"};
    swfobject.embedSWF("event_so_js.swf", "flashContent", "700", "400", "7.0.0", false, flashvars, params, attributes);</script>
</head>

<body>

<div id="flashContent">    <object data="event_so_js.swf"
 name="IDofSWF" id="IDofSWF" type="application/x-shockwave-flash" 
width="700" height="400"></object></div>

但是,只要我将HTML文件从该文件夹移到根文件夹并更新链接,它就无法正确加载 - 它似乎与外部SWF文件有问题。我确实已经成功地直接加载了一个外部SWF文件,但它在主SWF上遇到了问题。所有SWF文件都在同一个文件夹中,所以我不知道它为什么会出现问题。以下是HTML文件在根文件夹中的代码:

<script type="text/javascript" src="js/swfobject.js"></script>
<script type="text/javascript">
    var flashvars = {};
    var params = { allowScriptAccess: "always" };
    params.quality = "high";
    params.wmode = "transparent";
    var attributes = {id:"IDofSWF", name:"IDofSWF"};
    swfobject.embedSWF("folio/event_so_js.swf", "flashContent", "700", "400", "9.0.0", false, flashvars, params, attributes);</script>
</head>

<body>

<div id="flashContent">    <object data="folio/event_so_js.swf"
 name="IDofSWF" id="IDofSWF" type="application/x-shockwave-flash" 
width="700" height="400"></object></div>

页面上还有一个链接,使用ExternalInterface调用actionscript中的函数,因此可能导致问题。链接的代码是:

<a href="#" onclick="document.getElementById('IDofSWF').clicky()">

任何帮助都会很棒,因为这让我很困惑。

1 个答案:

答案 0 :(得分:0)

将其排序......

我更新了所有actionscript路径,以便它们相对于html / php文件的位置,而不是主swf。