[转]页面嵌入wmode=transparent的Flash没有事件的问题

好久没做flash和页面交互的东东了。今天做的一个小项目中,莫名其妙的出现了这样一个问题。
         当在页面中加载一段包含wmode=transparent的swf时,Flash内部的键盘事件竟然全部无法监听。最后才发现是"wmode=transparent" 这段代码惹的祸,郁闷啊~~~~将其删除就一切正常了。在网上搜了下关于wmode的解释:

wmode 属性/参数值 Window | Opaque | Transparent模板变量WM
说明(可选)允许使用 Internet Explorer 4.0 中的透明 Flash 内容、绝对定位和分层显示功能。此标记/属性仅在带有 Flash Player ActiveX 控件的 Windows 中有效。
"Window"在 Web 页上用影片自己的矩形窗口来播放应用程序。"Window"表明此 Flash 应用程序与 HTML 层没有任何交互,并且始终位于最顶层。
"Opaque" 使应用程序隐藏页面上位于它后面的所有内容。
"Transparent"使 HTML 页的背景可以透过应用程序的所有透明部分显示出来,并且可能会降低动画性能。
"Opaque windowless"和"Transparent windowless"都可与 HTML 层交互,从而允许 SWF 文件上方的层遮蔽应用程序。这两种选项之间的差异在于"Transparent"允许透明,因此,如果 SWF 文件的某一部分是透明的,则 SWF 文件下方的 HTML 层可以透过该部分显示出来,而"opaque"则不会显示。
如果忽略此属性,默认值为 Window。仅适用于 object。

虽然自己还没怎么看明白,但问题就出在这,这里记录下,希望给以后遇到此类问题的朋友一点帮助。

你可能感兴趣的:(html,windows,Web,Flash)