最好的 HTML 解决方法

HTML 5 + <object> + <embed>

<video width="320" height="240" controls="controls">
<source src="movie.mp4" type="video/mp4" />
<source src="movie.ogg" type="video/ogg" />
<source src="movie.webm" type="video/webm" />
<object data="movie.mp4" width="320" height="240">
<embed src="movie.swf" width="320" height="240" />
</object>
</video>
上面的代码来自W3CSchool
object标签只支持IE系列的浏览器或者其它支持Activex控件的浏览器 (Internet Explorer) 

为了确保大多数浏览器能正常显示flash,你需要把embed标签嵌套放在object标签内。

-----简言之,IE可以识别embed,但为了让其他浏览器也识别,加上object。

     我们现在大部分人做网页,都是直接用DW插入flash,而且DW也是所见即所得,直接生成了相应的flash显示代码。可是我们又有多少人了解这些直接由DW生成的代码呢?其实我接触flash player标签,是在刚学习html的时候,那时书中插入flash只有最简单的<embed src="" width="" height=""></embed>一句,而且在很长一段时间里,只要网页中插入flash我也都是这样写的,当时认为,这样写即简单好记,又节省代码,反倒对DW起疑问,为什么这么简单的代码,它要搞得这么复杂呢。但仔细想想,DW生成的代码必有他的道理。而在后来的应用中,也应证了我的判断(呵呵,也许想法本来就菜)。 
     这几个星期,一直在做flash与JS及.NET交互相关的应用,所以对OBJECT、EMBED标签有了更深的了解。就这两天,在做flash实现网页拖块布局功能(类似QQ空间的JS布局),由于要根据不同用户,载入及输出不同的用户配置文件,所以我想到了由.NET生成的相应用户的配置文件名,而用<param name="FlashVars" value="import=userimport1.txt&output=useroutput1.txt">来传递相关的文件变量给flash。但在实际应用中,发现Firefox及opera等浏览器并不能识变这样的变量传递,更确切地说,它们并不支持<param>标签。所以今天抽空,上MM网收集整合了一下相关的内容。      一、介绍: 
     我们要在网页中正常显示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="myFlashMovie.swf"> 
<PARAM NAME=quality VALUE=high> 
<PARAM NAME=bgcolor 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只写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的信息,请查看相关文档。
												

视频媒体播放,最好的 HTML 解决方法的更多相关文章

  1. CenOS下firefox browser (火狐浏览器)无法播放网页音乐的解决方法

    新装载的Firefox或许无法播放网页音频,解决方法如下: 1. 下载并安装 flashplayer插件&&下载网址:https://get.adobe.com/flashplayer ...

  2. 小程序安卓端播放不了音频解决方法wx.createInnerAudioContext()

    在小程序播放音频时,使用组件wx.createInnerAudioContext(),安卓端无法播放音频. 我的情况:播放服务器上传来的音频,格式为mp3.首先查看你的格式是否符合文档要求 在安卓端进 ...

  3. ueditor上传大容量视频报http请求错误的解决方法

    故障现象: 当使用百度编辑器ueditor上传大容量视频或大容量图片的时候,编辑器报"http请求错误"的解决方法详解: 原因分析: 目前很多CMS整合了百度的ueditor编辑器 ...

  4. asp.net下ueditor上传大容量视频报http请求错误的解决方法

    故障现象: 当使用百度编辑器ueditor上传大容量视频或大容量图片的时候,编辑器报“http请求错误”的解决方法详解: 原因分析: 目前很多CMS整合了百度的ueditor编辑器,但是上传稍微大一点 ...

  5. ios上视频与音乐合成后出现播放兼容问题的解决方法

    近期EasyDarwin开源流媒体团队EasyVideoRecorder小组同学Carl在支持一款短视频应用上线时,遇到一个问题:我们在IOS上合成"图片+音乐"成为视频之后,在P ...

  6. (DNS被劫持所导致的)QQ音乐与视频网页打开很慢的解决方法

    这周开始发现一个很让人抓狂的现象,QQ音乐网页(http://y.qq.com)与QQ视频(http://v.qq.com/)网页打开超慢,甚至是无法打开,严重影响了业余的音乐视频生活. 以QQ视频为 ...

  7. 【分享】4412开发板ubuntu 12.0.4播放音乐没有声音解决方法

    转自迅为论坛:http://bbs.topeetboard.com 准备工作 1.下载 vim 在命令行上输入 apt-get install vim 下载 vim 2.输入 vim /etc/hos ...

  8. 网站上flv,MP4等格式的视频文件播放不出来的解决办法

    在做一个网站时,发现视频文件,比如flv,MP4格式在本地可以正常的播放,但是传到了开发机器上,就不行了.播放器的文件地址是对的,就是一直没有反应. 经过长时间的实验,发现问题在与iis的设置问题.i ...

  9. 记一次Pr中视频蜜汁卡顿往复和解决方法

    目录 问题 换素材的起因 灵异素材 无端联想 解决 问题 换素材的起因 本来视频剪了一晚剪完了,导出一看,好家伙,糊到上世纪.原来素材的像素大小都没法看,这视频素材我是从别人U盘拷过来的,可他竟然是用 ...

随机推荐

  1. 引用(ajaxfileupload.js) ajaxfileupload.js报这错jQuery.handleError is not a function

    jQuery.handleError is not a function 原因是,经测试handlerError只在jquery-1.4.2之前的版本中存在,jquery-1.6 和1.7中都没有这个 ...

  2. USB OTG ID 检测原理

    OTG 检测的原理是: USB OTG标准在完全兼容USB2.0标准的基础上,增添了电源管理(节省功耗)功能,它允许设备既可作为主机,也可作为外设操作(两用OTG).USB OTG技术可实现没有主机时 ...

  3. MFC 全部自绘控件 界面库

    http://download.csdn.net/detail/q97082645/8160793 http://download.csdn.net/user/q97082645/uploads/3

  4. 学习使用React Native的心得体会

    首先根据官网上的介绍,安装必须的环境需求.http://reactnative.cn/docs/0.20/getting-started.html#content 下面讲一下一些常用的命令: .下载n ...

  5. HDU ACM 1046 Gridland 找规律

    分析:给出一个矩阵.问最短从一个点经过全部点以此回到起点的长度是多少.绘图非常好理解.先画3*4.3*3.4*4的点阵图案.试着在上面用最短路走一走,能够发现当矩形点阵的长宽都是奇数时,最短路中必然有 ...

  6. Lambda表达式图解

    internal delegate int MyDel(int x); public class Lambda { ; };//匿名方法 ; };//Lambda表达式 ; };//Lambda表达式 ...

  7. CheckBox只选择一项

    最近做一个问卷的页面,客户那边说要使用checkbox而且只能选择一项 就写了下面的代码 <html xmlns="http://www.w3.org/1999/xhtml" ...

  8. tomcat中开启的对SSL(https)的支持

    打开conf/server.xml会发现有下面一段配置被注释着: <!-- <Connector port="8443" protocol="HTTP/1.1 ...

  9. KVC中setValuesForKeysWithDictionary:

    本文转载于:http://my.oschina.net/u/2407613/blog/524879?p={{page}} 从字典映射到一个对象,这是KVC中的一个方法所提供的,这个方法就是 setVa ...

  10. ul li 好友列表

    <div class="col-md-4 mt"> <div class="friend-list"> <h4 class=&qu ...