html中插入flash代碼詳解

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"  
width="550" height="400" >  
<param value="myFlashMovie.swf">  
<param value="high">  
<param value="#FFFFFF">  
<embed src="/support/flash/ts/documents/myFlashMovie.swf" quality=high bgcolor=#FFFFFF WIDTH="550" HEIGHT="400"  
NAME="myMovieName" ALIGN="" TYPE="application/x-shockwave-flash"  
PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer">  
</embed>  

</object>


解釋:

OBJECT標籤是用於windows IE3.0及以後瀏覽器或者其它支持Activex控件的瀏覽器。“classid”“codebase”屬性必須要精確地按上例所示的寫法寫,它們告訴瀏覽器自動下載flash player的地址。如果你沒有安裝過flash player 那麼IE3.0以後的瀏覽器會跳出一個提示框訪問是否要自動安裝flash player。當然,如果你不想讓那些沒有安裝flash player的用戶自動下載播放器,或許你可以省略掉這些代碼。

EMBED
標籤是用於Netscape Navigator2.0及以後的瀏覽器或其它支持Netscape插件的瀏覽器。“pluginspage”屬性告訴瀏覽器下載flash player的地址,如果還沒有安裝flash player的話,用戶安裝完後需要重啓瀏覽器才能正常使用。
爲了確保大多數瀏覽器能正常顯示flash,你需要把EMBED標籤嵌套放在OBJECT標籤內,就如上面代碼例子一樣。支持Activex控件的瀏覽器將會忽略OBJECT標籤內的EMBED標籤。Netscape和使用插件的IE瀏覽器將只讀取EMBED標籤而不會識別OBJECT標籤。也就是說,如果你省略了EMBED標籤,那firefox就不能識別你的flash了(不過納悶的是,省略了object只寫embedIE也能正常顯示flash,呵呵,具體的再仔細看看了)。
本文列出了用於發佈影片的OBJECTEMBED標籤的必要以及可選屬性。

一、必需屬性:
·CLASSID-設置瀏覽器的Activex控件,僅用於OBJECT標籤,類ID,ActiveX組件的id,用於在註冊表裏面尋找對應的組件。
·CODEBASE-設置flash Activex控件的位置,因而如果瀏覽器如果沒有安裝的話,可以自動下載安裝。僅用於OBJECT標籤。
·WIDTH-以百分比或象素指定flash影片的寬度。
·HEIGHT-以百分比或象素指定flash影片的高度。
·SRC-指定影片的下載地址。僅用於EMBED標籤。
·PLUGINSPAGE-設置flash 插件的位置,因而如果瀏覽器如果沒有安裝的話,可以自動下載安裝。僅用於EMBED標籤。
·MOVIE-指定影片的下載地址。僅用於OBJECT標籤。

二、可選屬性及可用的值:
·ID-設定變量名,用於腳本代碼的引用。僅用於OBJECT
·NAME -設定變量名,用於腳本代碼(如javascript)的引用。僅用於EMBED
·SWLIVECONNECT - truefalse)指定當flash player第一次下載時,是否啓用java。如果些屬性省略,默認值爲false。你果你在相同頁同使用javascriptflashjava必須使用FSCommand來工作。
·PLAY -truefalse)指定flash影片是否在下載完成後就自動播放,如果省略此屬性,則默認爲true
·LOOP - truefalse)指定影片播放完最後一幀後是停止還是繼續循環播放,如果省略此屬性,則默認爲true
·MENU - truefalse
·True 
顯示全部的菜單,允許用戶放大,縮小等控制影片播放等操作。
·False 
顯示只包含設置選項和關於flash的菜單。
·QUALITY - (low, high, autolow, autohigh, best )
·Low 
速度優於美觀,而且不應用反鋸齒。
·Autolow 
剛開始着重於速度,但當需要時隨時提升美觀。
·Autohigh 
同時着重播放速度和美觀,但需要時則犧牲美觀來保證播放速度。
·Medium 
應用一些反鋸齒而不平滑位圖。它質量高於low設置而低於high設置。
·High 
美觀優於播放速度,而且一直應用反鋸齒。如果影片不包含動畫,位圖會被平滑化;而如果影片包含動畫,位圖將不變平滑。
·Best 
提供最好的顯示質量而不考慮播放速度。所有輸出都應用反鋸齒及所有位圖都被平滑化。
·SCALE - (showall, noborder, exactfit)
·Default(Show all)
影片在指定的區域內顯示,但保持原始的比例。影片兩側將會出現邊框。
·No Boder 
收縮影片以適合指定的區域,保持影片不失真,但部分影片將可能將裁切。然而保持影片的原始比例。
·Exact Fit 
使整個影片在指定的區域內顯示,影片有可能變形失真,而且不保持原始的比例。
·ALIGN - (l, t, r, b)
·
默認爲居中,當瀏覽器窗口小於影片時,邊緣會被裁切。
·Left,Right,Top,Bottom
按照相應的設置沿瀏覽器的邊緣對齊。如果需要,另外三邊將被裁切。
·SALIGN - (l, t, r, b, tl, tr, bl, br)
·L,R,T,B
·TL,TR
·BL,BR
·WMODE- (window, opaque, transparent) 設置flash影片的window mode屬性,指定flash在瀏覽器中的透明,層疊及位置。
·Window 
影片在瀏覽器中自己的矩形窗口內播放。
·Opaque 
影片隱藏了所有在它後面的內容。
·Transparent 
使flash影片透明,顯示透明影片後面的網頁內容。這將會降低動畫的性能。而且這個屬性不是在所有瀏覽器中都可用的。
·BGCOLOR - #RRGGBB, 十六進制RGB值。)指定影片的背景顏色。使用這個屬性覆蓋flash中設定的背景顏色。
·BASE - 設定基準目錄或URL,用來解決所以flash中的相對路徑。類似網頁中的<base>標籤。
·FLASHVARS傳遞變量到flash player,需要flash player6及以後的版本。
·
傳遞root級變量到影片。字符串的格式是用“&”分隔的name=value集。
·
瀏覽器支持64kB大小的字符串長度。
·
更多關於FlashVars的信息,請查看相關文檔。

二:一些技巧

(一)首先教大家最簡單的插入Flash的代碼,透明,無座標控制:

注意wmode="transparent"是控制Flash是否透明顯示的,如果不想讓它顯示爲透明的,直接把wmode="transparent"去掉即可。


<EMBED height=360 pluginspage=http://www.macrom edia.com/go/getflashplayer
src=http://imgfree.21cn.com/ free/flash/17.swf
type=application/x-shockwave-flash&nb sp;width=500 wmode="transparent"
quality="high"></EMBED>


(二)再教教大家加入絕對座標的透明Flash,絕對座標意味着不管你的窗口拉多大,那個Flash依然乖乖地在原地不動

<EMBED style=" LEFT: 250px; WIDTH: 550px; POSITION:&nbs p;absolute; TOP:
200px; HEIGHT: 1000px " align=right src=http://user.hjenglish.com/yangbb/
pics/snow.swf width=500 height=2000 type=appl ication/octet-stream ;
quality= "high" wmode="transparent">


(三)最後教教大家如何加入相對座標的透明Flash,注意下面代碼的table部分,這主要是使用表格作爲容器,把Flash
到表格裏,這樣不管瀏覽者把瀏覽器拉多大,Flash永遠和表格一起動。而且,表格可以設置背景圖片,表格上面再放一個透
Flash與背景圖片相配合,哇塞,效果好得不得了

<table border="0" cellPadding="0" cellSpacing="0" width=600 height=382
align=center backg
round=http://image.hjbbs.com/img/200410/200410259222581234.j pg>
<TD width=600 height=382><EMBED plug
inspage=http://www.macromedia.com/go/getflashplayer &nb sp;
src=http://user.hjenglish.com/yangbb/pics/hearts.swf wi dth="100%"
height="100%" 
type=application/x-shockwave-flash wmode="transparent" 
quality="high"></EMBED></TD></td></table>


------------------------------------------------------------ ------

還有以下方法:

基於網頁排版的實現方法

你可以先準備好一張圖片和一個適合做透明效果的flash,然後打開DREAMWEAVER中新建一個網頁,插入一個一行一列的
單元格,單元格的規格大小和事先準備好的圖片寬高一樣,然後把這個圖片設爲單元格的背景圖片,設置完了後,在這個單元格中插入準
備好的flash了,其中flash的大小規格也應該調成和單元格一樣大小。用鼠標選中flash後,把網頁編輯狀態由設計
切換到代碼中,你會看到flash部分在源代碼中都變成了黑色了,代碼實例如下:

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="
[url]http://download.macromedia.com/pub/shockwave/cabs/flash/swfl[/url]
ash.cab#version=6,0,29,0" width="470" height="180">
<param name="movie" value="0.swf">
<param name="quality" value="high">
<embed src="0.swf" quality="high"
pluginspage="
http://www.macromedia.com/go/getflashplayer"
type="application/x-shockwave-flash" width="470" height="180"></embed>
</object>

在以上代碼中插入這麼一段代碼:<param name="wmode" value="transparent">,完整代碼如下:

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="
[url]http://download.macromedia.com/pub/shockwave/cabs/flash/swfl[/url]
ash.cab#version=6,0,29,0" width="470" height="180">
<param name="movie" value="0.swf">
<param name="wmode" value="transparent">
<param name="quality" value="high">
<embed src="0.swf" quality="high"
pluginspage="
http://www.macromedia.com/go/getflashplayer"
type="application/x-shockwave-flash" width="470" height="180"></embed>
</object>

基於CSS排版 把核心思想把握,在有背景圖片的DIV標籤中再插入flash,然後對flash部分加入以上代碼就行了。

flashhtml發佈選項中選windows mode/t ransparent
windowless
,發佈爲html,插入網頁就可以得到透明的flash的效果。

  不錯,照這樣的辦法去做,便可以發佈出帶有透明flashhtml頁。但是它存在一個問題:所發佈的flash動畫只在與
其同時發佈的html頁中顯示透明效果,而如果用dreamweaver新建一個文件,再將其插入頁面中,保存-->&g
t;f12
預覽我們會發現它又是不透明的了!這是怎麼回事呢?

  我仔細比較了用flash發佈的html頁和用dreamweaver製作的帶有flash 動畫的兩個html 頁的源代碼:

  1.flash發佈的html頁源代碼:

<HTML>
<HEAD>
<TITLE>Movie2</TITLE>
</HEAD>
<BODY bgcolor="#000000">
<!-- URL's used in the movie-->
<!-- text used in the movie--> ;
<!--fdsaaaa aaaaaaa -->

<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="
http://download.macromedia.com/pub/shockwave/cabs/flash
/swflash.cab#version=5,0,0,0"
WIDTH=550 HEIGHT=400>
<PARAM NAME=movie value="Movie2.swf">
<PARAM NAME=quality value=high>
<PARAM NAME=wmode value=transparent>
<PARAM NAME=bgcolor value=#FFFFFF> <!--
flash導出後將背景改爲黑色,其目的是便於觀察透明效果-->
<EMBED src="Movie2.swf" quality=high wmode=transparent bgcolor=#FFFF FF
WIDTH=550 HEIGHT=400 TYPE= "application/x-shockwave-flash" PLUGINSPAGE="
[url]http://www.macromedia.com/shockwave/download/index.cgi?P1_Pr[/url]
od_Version
=ShockwaveFlash"></EMBED>
</OBJECT>

</BODY>
</HTML>

  2.dreamweaver製作的帶有flash 動畫的html頁的源代碼:

<html>
<head>
<title>Untitled document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body bgcolor="#000000" text="#000000"><!--背景亦爲黑色,其目的是便於觀察透明效果-->
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="
http://download.macromedia.com/pub/shockwave/cabs/flash
/swflash.cab#version=5,0,0,0" width="550" height="400">
<param name=movie value="Movie2.swf">
<param name=quality value=high>
<embed src="Movie2.swf" quality=high pluginspage="
[url]http://www.macromedia.com/shockwave/download/index.cgi?P1_Pr[/url]
od_Version
=ShockwaveFlash" type="application/x-shockwave-flash" width="550"
height="400">
</embed>
</object>
</body>
</html>

  請仔細比較分析兩段代碼的<object>標記中的<embed>標記,我們發現其中的不同之處:
前者有參數wmode=transparent而後者卻沒有,這就是影響flash是否透明的關鍵之所在!

  請想一下dreamweaver的有關flash的屬性面板,是否對parameter有印象呢?大家是否知道它的用處呢?

  現在讓我們用dreamweaver來做透明效果:選中剛纔已插入的flash動畫,右擊鼠標選擇properties調出
屬性面板後,再單擊parameter按鈕,在彈出的對話框中點擊加號圖標,在左側的parameter中鍵入wmode在右側
value框內鍵入transparent點擊ok,f12進行預覽,ok!我們所要的透明效果就出現了!

  先不要激動,我們把這一技巧推廣,它是否能對任何的按flash默認設置(即不對windows mode/tr ansparent
windowless
進行修改)的動畫都奏效呢?經過我的實驗證明它是普遍試用的。也就是說在d
reamweaver
中插入任何一個flash動畫後,對其進行properties→parameter→wmode→
value=transparent
設置都可以實現flash的透明背景效果。

-------------------------------------------------------------------------------------------------------------

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="789" height="283">
<param name="movie" value="tit.swf">
<param name="quality" value="high">
<embed src="../images/tit.swf" quality="high" pluginspage="
http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="789" height="283"></embed>
</object>




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章