如果您没有在 Flash 嵌入中设置 wmode,它将浮动在叠加层之上,这可能是一个很大的问题。这在拥有大量遗留视频代码的环境中或用户将发布新代码且教他们了解 wmode 是无济于事的情况下是理想的。这应该适用于所有浏览器。
$("embed").attr("wmode", "opaque");
var embedTag;
$("embed").each(function(i) {
embedTag = $(this).attr("outerHTML");
if ((embedTag != null) && (embedTag.length > 0)) {
embedTag = embedTag.replace(/embed /gi, "embed wmode="opaque" ");
$(this).attr("outerHTML", embedTag);
} else {
$(this).wrap("<div></div>");
}
});
这真是一个有用的片段。谢谢!CSS-Tricks 太棒了!
谢谢 =D
太棒了!
注意:这行需要转义反斜杠或交替引号
embedTag = embedTag.replace(/embed /gi, “embed wmode=”opaque” “);
谢谢!
在 Chrome 中无法使用,有人知道原因吗?在 Safari 和 Firefox 中运行良好。
谢谢您!您为我节省了很多时间。
Chris 的解决方案很好。但有时我会遇到问题,即 Google 广告在其嵌入在 iframe 中的 Flash 广告中没有指定透明或不透明参数。因此,我无法在该广告上添加任何叠加层。请帮忙。
参考 - http://coding.scribd.com/2010/11/13/flashheed-fixing-the-flash-z-index-problem-for-ads/
不幸的是,这对于嵌入在 iframe 中的 Flash 元素无效,有人有解决方法吗?
提前感谢。
感谢您提供使用 css 的技巧!
您好,
wmmode =”transparent” 适用于 Flash 动画。我希望 jQuery 也有这样的功能,请提供解决方案...