我知道很多人都问过这个问题,但我认为我的情况有点不同。
我有一个网站,其中有一些由于 xhtml/html 兼容性问题而隐藏在 Flash 中的广告。但是 Flash 元素位于我的 jQuery 对话框之上,这并不理想。
一些解决方案建议将 wmode 设置为不透明,但我不能,因为我的广告是输出 Flash 元素的脚本。
另一种解决方案建议在显示对话框时隐藏广告。所以我的问题是:有没有办法将 Flash 内容放在我的 jQuery 对话框后面,同时它们是可见的并且不改变 Flash 代码?
最好的问候, Lasse Espeholt
更新: 我现在用赏金重新提出了这个问题。至于现在,我将每个 Flash 广告都隐藏在“显示对话框”上。但这仍然不是最佳解决方案。所以,我正在寻找一个可以使每个 Flash 动画不透明的脚本(一个 jQuery 解决方案最好,但一个普通的 JavaScript 解决方案可以)。或者如果这个问题中没有讨论其他解决方案,我会很高兴听到它:)
更新 2: 到目前为止,我已经制作了这个脚本:
function opaqueAllFlashMovies() {
// Embed Flash movies
$('embed[wmode!="opaque"]').attr('wmode', 'opaque').wrap('<div>');
// Object flash movies with a wmode param
$('object[classid$="-444553540000"] parem[wmode]').attr('value', 'opaque');
// Object flash movies without a wmode param
$('object[classid$="-444553540000"]').not('param[wmode]').append('<param name=\'wmode\' value=\'opaque\'/>').wrap('<div>');
}
它适用于 FF 和 Chrome,但不适用于 IE。显然,.append
失败了。有任何想法吗?