2009-07-30 9 views
2

私はフラッシュ9が必要なswfを持っています。私はその上にコンテンツを表示しようとしています。これを容易にするために、私はwmodeを透明に設定しました。問題は、これは、ユーザーがフラッシュ10がインストールされている場合にのみ動作し、私が実際に作業しているサイトのコンテンツを見るためにフラッシュ10を必要としたくないということです。私がフラッシュ9でフラッシュコンテンツ上のdivをプルアップすると、swfはdivにブリードしたり、divを完全に上書きします。フラッシュでコンテンツを表示9 swf?

フラッシュをユーザーの要件にすることなくこの問題を回避するにはどうすればよいですか?

私はswfオブジェクトを使用してswfを埋め込み、jquery-uiを使ってフラッシュコンテンツ上にdivを表示しています。

編集:

このエラーはSafariでのみ表示されます。透明

答えて

2

これがあなた自身を助けるかどうかはわかりません。しかし、私は次の方法を使ってフラッシュ上にコンテンツを表示しました。

私はしばらく前にこの問題に直面していました。私は、サイトに登録するための利用規約のポップアップをユーザに提示することでした。ポップアップは大丈夫だったが、ダイアログの上部を隠していたページの上部にフラッシュムービーがあった。テスト済みで広く使用されている方法は、コンテンツを表示したい場所にIframeを配置し、コンテンツとIFrameを絶対的に配置することです。たとえば、あなたはフラッシュムービーの上のdivを表示したい場合は、iFrameを置きたいとは、次のとおりです。

<iframe style="position:absolute;top:250;left:150;"></iframe> 

その後のような、まさにこのはiframe上記のdivを配置:

<div style="position:absolute;top:250;left:150;"></div> 

私はjqueryのを使用していたがui.dialogプラグインを使用してダイアログを表示するページ。 いつか周りをだましてから、私は簡単な解決法に従うことを考案しました。

1)映画オブジェクトを一意に識別するためにムービー要素にid属性を設定します。同様に、ダイアログ(またはその他のコンテンツ)を表示する前に、javascript関数を呼び出してムービーを非表示にしてください。同様に、

$("#movie1").css("display","none"); 

3)今すぐダイアログを表示します。同様に、

$("#dialog").dialog("open"); 

4)ダイアログを閉じた後、再度ムービーを表示します。同様に、

$("#dialog").dialog("close"); 
    $("#movie1").css("display","inline"); 
3

WMODEは、あなたが透明のwmodeを使用する必要はありません、年のためのFlashの一部となっており、10

かかわらず、Flash Playerのに限定されるものではありません。本当にあなたのSWFに透過性が必要な場合を除き、代わりにwmode opaqueを使用する必要があります。バギーが少なく、処理能力が低くなります。

あなたのHTML要素がCSSに記載されている「位置」を持つことを確実にすることです。ここでは例や指示に従って

試してみてください。 http://learnswfobject.com/advanced-topics/placing-html-elements-over-a-flash-movie/

-1

私は私のブックマークにこれを見つけた(と彼らが事前に10時代からです)。私はここでこれを検証するためにFlash Player 9/Safariを持っていませんが、試してみます。

Different WModes for Browsers

pipwerksが言ったように、WMODEは、これを制御する必要がありますが、すべてのプラットフォーム/ブラウザは、それらを正しく処理できません。その場合、私はこれをSafariの/ Flash9の不具合とみなし、修正することはできません。

-1

wmodeパラメータをopaqueに設定してみます。それは、Flashが関わっているときに、HTMLレイヤー/深度の問題をたくさん解決するようです。

1

問題を解決できるアドバイスはできませんので、代わりに問題を回避することをお勧めします。

Zインデックス

+------------+ 
|   | 
| +-------------+ 
| | html  | 
| |    | 
| +-------------+ 
| Flash | 
+------------+ 

方法でFlashコンテンツの上に(X)HTMLコンテンツを持っているのではなく、代わりにウィンドウ内のFlash上​​記(X)HTMLコンテンツを配置について:

+------------+ 
| html  | 
|   | 
+------------+ 
+------------+ 
|   | 
| Flash  | 
|   | 
|   | 
|   | 
|   | 
+------------+ 

これは理想的ではありませんが、少なくともFlash/htmlがよりうまく共存できるようになるまで、実行可能なソリューションを提供します。

+0

これはこの特定のケースでは不可能です。フラッシュはページ上ではかなり高く、私はjquery-uiコンポーネントをプルアップしています。それが可能なら回避策を全面的に進めるだろう。 –

+0

アスキーダイアグラム上の功績 –

+0

あなたの状況は私にとって恐ろしいものです。なぜなら、悲しいことに、特に機能的な選択肢はないと思うからです。しかし、ここに期待している!そして、ええ、誰がasciiを愛していない=) –

関連する問題