没有 SWFObject.js 的 Javascript 到 Flash 通信

Posted

技术标签:

【中文标题】没有 SWFObject.js 的 Javascript 到 Flash 通信【英文标题】:Javascript to Flash communication without SWFObject.js 【发布时间】:2010-11-05 13:12:42 【问题描述】:

想知道是否可以在不使用 SWFobject 或任何其他额外的 javascript 文件的情况下从 javascript 到 flash 进行通信。

目前我正在使用以下指南: http://www.viget.com/inspire/bi-directional-actionscript-javascript-communication

感谢您的宝贵时间。

【问题讨论】:

为什么投反对票?我是否为此遗漏了什么似乎是一个好问题。 是的,不知道为什么它被否决了。对我来说似乎也是一个好问题。 只是想提一下,您不需要在该 viget 链接中使用复杂(且已弃用)的 getFlashMovie 代码——您可以简单地使用 document.getElementById。所有现代浏览器都支持它,包括 IE6。我一直将它用于 ExternalInterface,它工作得很好,而且它是向前兼容和基于标准的。 【参考方案1】:

使用 Flash's externalInterface 和您自己编写的 JavaScript(这应该是您唯一需要的 JavaScript)是完全可能的。

SWFObject 的存在只是为了抽象出将 Flash 片段添加到 html 内容中,因此根本没有必要(它基本上会根据您的浏览器编写正确的 objectembed 标签并解决 IE 的 @987654325 @ 点击运行 Flash 警告)。

如果您想将您的 Flash 片段手动编码到文档中,那很好; SWFObject 使其更简洁、更容易,但不会启用或添加除此之外的功能。但是,由于它运行良好,它已成为一种在网站上安装 Flash 的标准方法。

将您的 Flash 片段放在您喜欢的页面上,确保它在其 objectembed 标记中设置了 id,并且您应该设置好。

【讨论】:

以上是关于没有 SWFObject.js 的 Javascript 到 Flash 通信的主要内容,如果未能解决你的问题,请参考以下文章

我需要swfobject.js的替代解决方案

包括/实现SWFObject

swf 文件在 html5 中是不是仍需要 swfobject.js?

使用SWFObject显示Flash内容

JW Player参数详解

Youtube视频w/Javascript API-自动播放和静音