将 Flash 文件转换为 HTML

Posted

技术标签:

【中文标题】将 Flash 文件转换为 HTML【英文标题】:Converting Flash File to HTML 【发布时间】:2019-12-27 12:47:31 【问题描述】:

我有 Flash 文件 (.fla),使用 Adob​​e Animate 将其转换为 html。转换时很少有代码被注释掉。需要为注释的 Actionscript 识别 java 脚本等效语法/代码段。以下是示例注释操作脚本。

dashboard_btn.onRelease = function()            
    ExternalInterface.call("Main.getInstance().FlashDecision","DASHBOARD");          
    gotoAndStop("DASHBOARD");

如何替换onRelease和ExternalInterface.call?

例如,gotoAndStop("DASHBOARD"); //ActionScript,可以转换成this.gotoAndStop("DASHBOARD"); //javascript

【问题讨论】:

不要否定我的问题,如果您不清楚,请发表评论。这样我就可以更新我的问题。通过否定标记,我现在怎么会错过我错过的。 【参考方案1】:

“如何替换onReleaseExternalInterface.call?

(1) 对于onRelease,您可以使用HTML 的mouseup 事件:

所以AS3代码:

dashboard_btn.onRelease = function()

在 Javascript 中,它变成... (其中 divcontainer,类似于 Flash 的 MovieClip/Sprite 容器):

<div id="dashboard_btn" onmouseup="someFunctionName();">
<img src="img_of_button.png"  >
</div>

<script type="text/javascript">

function someFunctionName()

    //do what need when user's finger leaves a mouse button (release)
    alert("finger was released from button");


</script>

(2) HTML 代码中没有ExternalInterface.call。这是为了让 SWF 与其容器进行通信(例如:如果 SWF 包含在 HTML 文档中,则调用 Javascript 的函数)。如果您正在转换为 Javascript,那么您的代码已经 在容器内(此时不需要 externalInterface 存在)。只需在需要时手动调用 Javascript 函数即可。

如果您的代码真正包含一些名为gotoAndStop 的JS 函数,请使用它,否则您可以通过显示“DASHBOARD”框架的内容手动实现相同的目的。可以通过创建一些 HTML 字符串来提供内容,然后使用 appendChildinnerHTML 使用该 HTML 更新 &lt;div&gt; 容器。

你可以将上面的代码扩展成这样的逻辑:

function someFunctionName()

    //# do what need when user's finger leaves a mouse button (release)
    alert("finger was released from button");

    //# if such Function exists in your code
    this.gotoAndStop("DASHBOARD");

    //# or else run some other Function manually
    FlashDecision("DASHBOARD");


function FlashDecision( input_txt )

    alert("Show content here of frame labeled : " +  input_txt); //where input_txt is "DASHBOARD"...

【讨论】:

感谢您的回复,经分析发现Adobe Animate转换的JavaScript文件依赖于CreateJS库。使用 CreateJS 语法和事件处理程序能够达到预期的结果。

以上是关于将 Flash 文件转换为 HTML的主要内容,如果未能解决你的问题,请参考以下文章

将 Office 文件转换为 swf (Flash)

如何将音频数据数组转换为 wav 文件?

如何将 .swf 文件转换为 HTML 文件? [关闭]

将 LibreOffice Impress 导出的 flash 文件转换为 mp4 格式?

Google的黑科技Swiffy:Flash文件转换成HTML5将于7月下线

如何将 Flash 视频转换为 html5 视频?