首页 > 代码库 > object和embed使用及举例

object和embed使用及举例

一、介绍: 
我们要在网页中正常显示flash内容,那么页面中必须要有指定flash路径的标签。也就是OBJECT和EMBED标签。OBJECT标签是用于windows平台的IE浏览器的,而EMBED是用于windows和Macintosh平台下的Netscape Navigator浏览器以及Macintosh平台下的IE浏览器。windows平台的IE利用Activex控件来播放flash而其它的浏览器则使用Netscape插件技术来播放flash。 

下面是简单的网页中插入flash的代码示例: 

Code:
<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" id="myMovieName"> 
<PARAM NAME=movie VALUE="http://www.mamicode.com/myFlashMovie.swf"> 
<PARAM NAME=quality VALUE=http://www.mamicode.com/high>
<PARAM NAME=bgcolor VALUE=http://www.mamicode.com/#FFFFFF>
<EMBED src="http://www.mamicode.com/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只写embed,IE也能正常显示flash,呵呵,具体的再仔细看看了)。
本文列出了用于发布影片的OBJECT和EMBED标签的必要以及可选属性。 

一、必需属性: 
  ·CLASSID-设置浏览器的Activex控件,仅用于OBJECT标签。 
  ·CODEBASE-设置flash Activex控件的位置,因而如果浏览器如果没有安装的话,可以自动下载安装。仅用于OBJECT标签。 
  ·WIDTH-以百分比或象素指定flash影片的宽度。 
  ·HEIGHT-以百分比或象素指定flash影片的高度。 
  ·SRC-指定影片的下载地址。仅用于EMBED标签。 
  ·PLUGINSPAGE-设置flash 插件的位置,因而如果浏览器如果没有安装的话,可以自动下载安装。仅用于EMBED标签。 
  ·MOVIE-指定影片的下载地址。仅用于OBJECT标签。 

二、可选属性及可用的值: 
  ·ID-设定变量名,用于脚本代码的引用。仅用于OBJECT。 
  ·NAME -设定变量名,用于脚本代码(如JavaScript)的引用。仅用于EMBED。 
  ·SWLIVECONNECT - (true或false)指定当flash player第一次下载时,是否启用Java。如果些属性省略,默认值为false。你果你在相同页同使用javascript和flash,java必须使用FSCommand来工作。 
  ·PLAY -(true或false)指定flash影片是否在下载完成后就自动播放,如果省略此属性,则默认为true。 
  ·LOOP - (true或false)指定影片播放完最后一帧后是停止还是继续循环播放,如果省略此属性,则默认为true。 
  ·MENU - (true或false) 
  ·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的信息,请查看相关文档。

 

一个flv播放器的例子:
功能:网页FLV视频在线播放代码
 代码如下:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="500" height="400">
  <param name="movie" value="http://www.cnzz.cc/Flv/Flvplayer.swf" />
  <param name="quality" value="http://www.mamicode.com/high" />
  <param name="allowFullScreen" value="http://www.mamicode.com/true" />
  <param name="FlashVars" value="http://www.mamicode.com/vcastr_file=http://www.cnzz.cc/news/UploadFiles_1118/200809/神舟七号点火发射瞬间.flv&LogoText=www.cnzz.cc&BufferTime=3" />
  <embed src="http://www.cnzz.cc/Flv/Flvplayer.swf" allowfullscreen="true" flashvars="vcastr_file=http://www.cnzz.cc/news/UploadFiles_1118/200809/神舟七号点火发射瞬间.flv&LogoText=www.cnzz.cc" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="500" height="400"></embed>
</object>

 代码说明:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="500" height="400">
  <param name="movie" value="http://www.cnzz.cc/Flv/Flvplayer.swf" />
  <param name="quality" value="http://www.mamicode.com/high" />
  <param name="allowFullScreen" value="http://www.mamicode.com/true" />
  <param name="FlashVars" value="http://www.mamicode.com/vcastr_file=http://www.cnzz.cc/news/UploadFiles_1118/200809/神舟七号点火发射瞬间.flv&LogoText=www.cnzz.cc&BufferTime=3" />
  <embed src="http://www.cnzz.cc/Flv/Flvplayer.swf" allowfullscreen="true" flashvars="vcastr_file=http://www.cnzz.cc/news/UploadFiles_1118/200809/神舟七号点火发射瞬间.flv&LogoText=www.cnzz.cc" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="500" height="400"></embed>
  </object>

500 :播放器的宽度。
400:播放器的高度。
Flvplayer.swf :播放器文件地址,如果大家没空间放,请直接用http://www.cnzz.cc/Flv/Flvplayer.swf。
http://www.cnzz.cc/news/UploadFiles_1118/200809/神舟七号点火发射瞬间.flv:flv文件地址。
www.cnzz.cc :播放器顶部标志,可缺省。
Flvplayer.swf 这是FLV播放器,也就是上面下载的播放文件,很重要,路径一定要对,否则播放错误,可以放其他目录,如果放在 img目录就是:img/Flvplayer.swf ,前面不带“/”。,可直接用本地的FLV播放器http://www.cnzz.cc/Flv/Flvplayer.swf
如需自动播放加上IsAutoPlay=1
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="500" height="400">
<param name="movie" value="http://www.cnzz.cc/Flv/Flvplayer.swf" />
<param name="quality" value="http://www.mamicode.com/high" />
<param name="allowFullScreen" value="http://www.mamicode.com/true" />
<param name="FlashVars" value="http://www.mamicode.com/vcastr_file=http://www.cnzz.cc/news/UploadFiles_1118/200809/神舟七号点火发射瞬间.flv&LogoText=www.cnzz.cc&BufferTime=3&IsAutoPlay=1" />
<embed src="http://www.cnzz.cc/Flv/Flvplayer.swf" allowfullscreen="true" flashvars="vcastr_file=http://www.cnzz.cc/news/UploadFiles_1118/200809/神舟七号点火发射瞬间.flv&LogoText=www.cnzz.cc&IsAutoPlay=1" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="500" height="400"></embed>
</object>

object和embed使用及举例