1

我正在创建允许用户上传 swf 文件的网站。我正在尝试添加一个在上传之前显示 swf 文件的功能,以便用户可以确认他/她是否上传了正确的文件。

我目前正在使用 FileReader::readAsDataUrl(file) 方法,但它不起作用。虽然它可以读取文件的内容,但似乎 Flash Player 无法正确解释数据。当您右键单击它时,它会显示“电影未加载”。

下面是生成的 html 代码表单 javascript。

<object width="350" height="350" type="application/x-shockwave-flash" data="<!--data-->">
    <param name="movie" value="<!--data-->">
    <param name="AllowScriptAccess" value="always">
</object>

我尝试将数据和值部分更改为已上传到服务器的同一文件的 url,并且它有效。所以也许有一种不同的方式从本地电脑读取数据。

非常感谢任何反馈。

谢谢,艺人

4

2 回答 2

1

最后,在阅读了 File API 文档之后。我能够让它工作,但只能在本地电脑上而不是在服务器上。

我曾经window.URL.createObjectURL(file)获取文件的 url 并将其传递给 embed 元素的 src 属性。

于 2012-06-29T09:32:25.350 回答
0
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" WIDTH="320" HEIGHT="240" id="Yourfilename" ALIGN="">
    <PARAM NAME=movie VALUE="Yourfilename.swf"> 
    <PARAM NAME=quality VALUE=high> 
    <PARAM NAME=bgcolor VALUE=#333399>
    <EMBED src="Yourfilename.swf" quality=high bgcolor=#333399 WIDTH="320" HEIGHT="240" NAME="Yourfilename" ALIGN="" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED> 
</OBJECT>

试试这个,让我们知道

于 2012-06-29T09:05:54.073 回答