私は多くの人がこの質問をしていることを知っていますが、私の状況は少し違うと思います。jQueryダイアログの上のFlash
xhtml/htmlの互換性の問題のためにFlashが隠されている広告があるサイトがあります。しかし、フラッシュ要素は理想的ではない私のjQueryダイアログの上にあります。
一部のソリューションでは、wmodeを不透明に設定することを推奨していますが、広告がFlash要素を出力するスクリプトであるため、できません。
別の解決策は、ダイアログが表示されたときに広告を隠すことを提案しました。だから私の質問は:表示され、フラッシュコードを変更せずにjQueryのダイアログの後ろにフラッシュコンテンツを配置する方法はありますか?
敬具、 ラッセEspeholt
アップデート:私は今の恩恵で質問をreopnedいる 。今のところ、私はすべてのFlash広告を "show dialog"に隠しています。しかし、これはまだ最適な解決策ではありません。だから、私はすべての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
は失敗します。何か案は?
上記の私のコメントを参照してください。私は、スクリプトを制御できません。それらは提供され、必要に応じて毎秒変更することができます。 私は "iframes" タグにスクリプトを持っています。 「iframe」内のフラッシュオブジェクトを含むすべてのフラッシュオブジェクトでwmodeを編集するようにjQueryを設定できますか? –
OK、それは悪いです。あなたがjQueryをフラッシュオブジェクトのHTMLコードを即座に変更できるかどうかは分かりませんが、一旦フラッシュがロードされるとそれを変更すると、フラッシュのリロードが必要になるかもしれません。ダイアログが表示されたときに広告を非表示にすることは、これまでのところ最良の解決策のように思えます。 –
これは私が今行っていることです、ありがとう:) –