怎樣去掉flash激活提示

微軟更新了IE瀏覽器,針對IE的更新,使ActiveX內容不能自載入的問題引發了許多人的關注.這些改變能夠在Adobe的某些軟件中看到,包括flashplayer.Authorware player, shockwave Player, SVG Viewer,Help Center 和 Adobe Reader,固然還有 Sun Java, Apple QuickTime, RealNetworks,RealPlayer和其它的ActiveX .經過某些方法嵌入到html頁面中的交互內容可能不能響應用戶的輸入(例如,鍵盤,鼠標)直到用戶點擊要麼激活要麼繼續loading .下面個人看看它究竟是怎麼一回事,並怎樣解決它來使用戶最大限度的方便瀏覽,由於webstudio 的flash網站建設是主要的業務,因此非常想找到簡單的解決辦法.

問題

當你查看web頁面時,windows下的IE瀏覽器會將ActiveX內容顯不爲一個矩形框和一個提示內容爲」Click to activate and use this control」意思就是你須要激活ActiveX的內容才能夠查看或交互控制,ActiveX內容可能或不能象你預想的那樣載入並進行播放.
能夠查看Adobe提供的演示:這裏

Adobe的解決方案

有以下兩種解決方法:
方法1
若是你瀏覽了包含ActiveX的頁面.點擊這個內容激活它.
方法2
若是你正在開發一個網站,移除針對ActiveX內容所需的用戶激活過程.針對此Adobe提供了一份基於javascriptr 解決文檔.這裏
經過使用Adobe的解決文檔能夠解決上述問題.

那麼除了上述方法以外還有沒有其它更簡單的方法呢,答案是確定的.可使用deconcept 的flashObject 相比而言會比使用Adobe的方法更簡單一些.而且運行情況是良好的.這裏下載Download FlashObject 1.3 (38 hits)

基本方法以下:
只須要將flashobject.js 包含在你的html頁面內,而後加上一點javascript代碼嵌入flash swf就ok了.
它的工做方式以下:

代碼:

<script type="text/javascript" src="flashobject.js"></script>

<div id="flashcontent">
This text is replaced by the Flash movie.
</div>

<script type="text/javascript">
var fo = new FlashObject("movie.swf", "mymovie", "200", "100", "7", "#336699");
fo.write("flashcontent");
</script>


簡單分析一下,或是你能夠仔細看flashObject的文檔

代碼:

<div id="flashcontent">
This text is replaced by the Flash movie.
</div>


這一段至關於咱們在爲放置flash文件而準備的一個holder.有些象咱們經常使用的空的MovieClip holder.爲放入內容而準備的.若是你沒有裝flashplayer.那麼裏面的那行字會顯示出來如顯示爲」This text is replaced by the Flash movie.」
若是你裝了flashplayer,那這行字是不會顯示的,用戶基本上是看不到的,同時它還有一個好處是你能夠把這行內容變成的你搜索關鍵字,google會很容易搜到它的.呵呵,一箭雙鵰.
下面這段一看就知道是什麼了.
代碼:

<script type="text/javascript">
var fo = new FlashObject("movie.swf", "mymovie", "200", "100", "7", "#336699");
fo.write("flashcontent");
</script>


用來嵌入swf,好比當前的影片文件是」movie.swf」, id是」mymoive,寬是200,高是100,flashplayer版本是7,背景色是#336699.

下面咱們來看一下咱們嵌入一個flash的範例.
根據上面的基本工做方式,咱們還要嵌入一些其它的參數.來知足咱們一些其它的須要好比咱們有一個文件名爲ws.swf,咱們想把它嵌入到頁面中,又不至於受IE更新的影響.
1.在頁面中包入flashobject.js文件
<script type="text/javascript" src="flashobject.js"></script>
通常這行代碼能夠寫在body標籤以前便可.
2.把下面這段代碼加在它下方.
代碼:

<div id="flashcontent" style="width: 300px; height: 200px"></div>
<script type="text/javascript">
   var fo = new FlashObject("ws.swf", "mymovie", "300", "200px", "7", "#336699");
   fo.addParam("quality", "low");
   fo.addParam("wmode", "transparent");
   fo.addParam("salign", "t");
   fo.addParam("scale", "noscale");
fo.addParam("loop", "false");
   fo.write("flashcontent");
</script>

從上面的代碼中咱們看出,咱們將要把FLASH放在id爲flashcontent層中,它的寬爲300高爲200像素,那麼應是和咱們的swf文件的大小是相同的.若是你想縮放也能夠是不一樣的.下面var fo = new FlashObject("ws.swf", "mymovie", "300", "200px", "7", "#336699");
是嵌入flash文件,在以前的內容已介紹過它裏面的參數,其中的ws.swf能夠是相對路徑也能夠是絕對路徑,如你能夠直接輸入網站加上你的swf文件名字.
再下面的一段就是咱們能夠加入的參數,從上到下分別爲quality質量,wmode transparent透明,salign對齊,scale縮放,loop循環等.
這樣咱們的嵌入過程就完成了.

若是你想使用flashVars來進行html與flash以前的通信,使用flashobject也是很容易的,但有一點使用flashobjcet時只有在swf剛一載入時傳遞參數.而且是以值對的形式來傳遞,以下:variable1=value1&variable2=value2&variable3=value3
使用方法以下:

代碼:
<script type="text/javascript">    var fo = new FlashObject("movie.swf", "mymovie", "200", "100", "7", "#336699");    fo.addVariable("variable1", "value1");    fo.addVariable("variable2", "value2");    fo.addVariable("variable3", "value3");    fo.write("flashcontent"); </script>
一旦這一步完成,那麼全部的變量就已經傳入到flash,你就能夠靈活的在你的flash中的_root上使用了. deconcept flashObject還提供了能夠加入其它參數的說明.你能夠詳細查看 除了這種簡單方法以外,這還有一個與之相似的,我並無仔細看,若是你有興趣能夠仔細看一下.這裏ufo 哈哈,針對微軟IE的更新改變,咱們已經能輕鬆的去掉必需要點擊一下才能看的過程了.若是你有空不要忘了去微軟網站上看一下,它用的是什麼,最後,不要忘了更新你網站,Cheers
相關文章
相關標籤/搜索