WEB开发网
开发学院图形图像Flash 不可见的 Flash:通过使用不可见的 Flash Player ... 阅读

不可见的 Flash:通过使用不可见的 Flash Player 增强 Web 应用程序

 2010-07-09 00:00:00 来源:WEB开发网   
核心提示: 这段代码中首先要注意的是使用了第三方 JavaScript 库 swfobject,这实际上是嵌入 SWF 的标准库,不可见的 Flash:通过使用不可见的 Flash Player 增强 Web 应用程序(5),它是开源的,虽然最初不是由 Adobe 开发的,可以直接调用 清单 2 中公开的

这段代码中首先要注意的是使用了第三方 JavaScript 库 swfobject。这实际上是嵌入 SWF 的标准库。它是开源的,虽然最初不是由 Adobe 开发的,但是现在由他们维护。它的 embedSWF 函数用于嵌入由清单 2 编译的 SWF。第一个参数是指向 SWF 的 URL。本例中,SWF 来自和 HTML 文件相同的服务器和路径,因此可以使用一个相对 URL。第二个参数是在其中嵌入 SWF 的页面的 HTML 元素的 ID。本例中是 "flashContainer" — 同时您将注意到 HTML 文档的主体部分有一个 HTML div 使用该 ID。

接下来的两个 embedSWF 参数是 SWF 的高度和宽度。在本例中,两者的值都是 1。这意味着 SWF 的高度和宽度都为一个像素。这就是不可见的 SWF!下一个参数是 Flash 的最低版本,您的 JavaScript 将检查该参数。如果 Flash 已安装在浏览器上,但其版本号比传递给 embedSWF 的版本号更低,那么 embedSWF 将使用下一个参数 "playerProductInstall.swf"。这是指向另一个 SWF 的 URL,它提示用户安装最新版本的 Flash。对于不可见 Flash,这其实没什么影响 — “您需要安装最新版本 Flash” 的 SWF 其实也不可见(当然,也是 1x1 像素)。传给 embedSWF 的最后一个参数很重要。这是一个包含各种可选参数的属性对象。其中一个可选参数是 SWF 的 ID。对于和本文类似的用例,该参数是不可选的 — 这至关重要!它将会提供给 SWF 一个 HTML ID,而这将会在使用 JavaScript 进行编程访问时用到。

现在看看 清单 3 中的两个 JavaScript 函数。二者很相似。都使用熟悉的 getElementById 函数获取 SWF 的引用。请注意它们使用的是 writeFlash 函数中的 attrs 对象指定的 ID。取得 SWF 引用后,可以直接调用 清单 2 中公开的 ActionScript 函数。此处的关键是,JavaScript 中使用的函数名必须匹配 ExternalInterface.addCallback 函数中公开的名称或者是传给 addCallback 的第一个参数。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:可见 Flash 通过

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接