IEflash遇到flash遮擋

 遇到IE中(包括IE6+)彈窗廣告要flash遮擋的問題,後來想到了經常使用的iframe方法(參見《解決IE6 select z-index無效,遮擋div的bug》),最終成功了flash遮擋DIV的bug,可是在IE中還出現了浮動的DIV變化位置後,flash出現div碎片的拖尾現象。繼續尋找解決方案。最後終於找了原來flash有個參數wmode能夠設置,因而代碼變成了這樣:html

<embed src=」s.swf」 quality=」high」 wmode=」Opaque」 width=」150″ height=」240″></embed>瀏覽器

因而IE中Flash遮擋DIV的問題成功解決了,看圖:spa


flash遮擋div問題的解決方案htm

 

wmode還有其餘屬性對象

 

window 模式get

默認狀況下的顯示模式,在這種模式下flash player有本身的窗口句柄,這就意味着flash影片是存在於Windows中的一個顯示實例,而且是在瀏覽器核心顯示窗口之上的,因此flash只是貌似顯示在瀏覽器中,但這也是flash最快最有效率的渲染模式。因爲他是獨立於瀏覽器的HTML渲染表面,這就致使默認顯示方式下flash老是會遮住位置與他重合的全部DHTML層。iframe

可是大多數蘋果電腦瀏覽器會容許DHTML層顯示在flash之上,但當flash影片播放時會出現比較詭異的現象,好比DHTML層像被flash刮掉一塊同樣顯示異常。flash

Opaque 模式it

這是一種無窗口模式,在這種狀況下flash player沒有本身的窗口句柄,這就須要瀏覽器須要告訴flash player在瀏覽器的渲染表面繪製的時間和位置。這時flash影片就不會在高於瀏覽器HTML渲染表面而是與其餘元素同樣在同一個頁面上,所以你就可使用z-index值來控制DHTML元素是遮蓋flash或者被遮蓋。io

Transparent 模式

透明模式,在這種模式下flash player會將stage的背景色alpha值將爲0而且只會繪製stage上真實可見的對象,一樣你也可使用z-index來控制flash影片的深度值,可是與Opaque模式不一樣的是這樣作會下降flash影片的回放效果,並且在9.0.115以前的flash player版本設置wmode=」opaque」或」transparent」會致使全屏模式失效。

相關文章
相關標籤/搜索