Adobe 的此页面表示添加“wmode”参数并将其值设置为“透明”: http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_1420

这在 IE 中完美运行。背景在 Firefox 和 Safari 中正确呈现,但是一旦您使用浏览器的滚动条,然后将鼠标悬停在 Flash 控件上,您必须单击一次才能激活该控件。如果您尝试点击 Adob​​e 示例中的播放按钮,您会看到此行为。

有人知道解决这个问题的方法吗?

有帮助吗?

解决方案

您知道嵌入时可以设置背景颜色吗?

定义对象和/或嵌入标签时,以下属性是可选的。对于 object ,除非另有说明,所有属性都在 param 标签中定义:

背景颜色 - [十六进制 RGB 值],格式为 #RRGGBB 。指定影片的背景颜色。使用此属性可以覆盖 Flash 文件中指定的背景颜色设置。该属性不影响 HTML 页面的背景颜色。

剪切粘贴自 http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_12701&sliceId=1

其他提示

另一个注意事项;将 wmode 设置为透明有一些问题。例如,在某些旧版本的 Firefox(2.0 之前)中,它可能会破坏滚动(无论滚动,闪光灯仍保持在同一位置)。当 wmode 透明时,我还遇到了文本字段中 ALT 键组合不起作用的问题。

另外,如果您需要将 html-content 放在 flash-content 之上(通常不是一个好主意,但在某些情况下它很有用),则 wmode=transparent 是可行的方法。

启用无窗口模式 (wmode=) 使嵌入式 Flash 的行为和渲染就像其他元素一样。如果没有它,它会在单独的步骤中渲染并覆盖在浏览器的窗口上。

闪光灯元素是否会失去焦点?听起来输入焦点已移至滚动条,然后您必须将其移回来。

另外,您不清楚焦点问题是仅在 FF 中还是在 IE 中。

Adobe 示例在 Firefox 3.0.1 中“有效”,因为背景是透明的。但是,在 Firefox 3.0.1 和 Safari 3.1.2 中,您必须单击播放按钮两次才能看到动画。

在花了更多时间研究这个问题后,我同意@grapefrukt。将 wmode 设置为透明会导致各种奇怪的问题,我认为应该避免它。

相反,我采用将背景颜色作为参数传递。我使用以下 ActionScript 来绘制背景。

var parameters:Object = LoaderInfo(this.root.loaderInfo).parameters;
opaqueBackground = parameters["background-color"];

编辑:感谢 @grapefrukt 提醒我 bgcolor 参数(这使得上面的 ActionScript 完全没有必要)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top