直接使用<object>或<embed>都可以实现视频播放,那么两者的区别是什么?

1、是为了兼容不同浏览器,IE只支持对Object的解析;火狐,谷歌,Safari只支持对Embed的解析。
2、object标签用clsid表示控件的唯一id,而embed标签用type表示插件的唯一名称。比如flash插件type为:application/x-shockwave-flash,mp3播放插件type为audio/mpeg。
3、为了兼容多个浏览器,可以通过ie浏览器动态加载Object标签,非ie浏览器动态加载embed标签;或者在object标签里面嵌入embed标签

使用 object 和 embed 标签来嵌入,细心的会发现,object 的很多参数和 embed 里面的很多属性是重复的,为什么这样做?为了浏览器兼容性,有的浏览器支持 object,有的支持 embed,这也是为什么要修改 Flash 的参数时两个地方都要改的原因。这种方法是 Macromedia 一直以来的官方方法,最大限度的保证了 Flash 的功能,没有兼容性问题。
现阶段用 JS 嵌入 Flash 是最完美的方法,有人写了很完善的嵌入脚本可以方面地下载使用(推荐 SWFObject),SWFObject.js下载地址https://github.com/swfobject/swfobject

objec参数说明
param name标签是在这个播放插件中嵌入的一些功能和播放参数,比如(你可以抄下来): 
<param name="playcount" value="1"><!--控制重复次数: “x”为几重复播放几次; x=0,无限循环。--> 
<param name="autostart" value="0"><!--控制播放方式: x=1,打开网页自动播放; x=0,按播放键播放。--> 
<param name="clicktoplay" value="1"><!--控制播放开关: x=1,可鼠标点击控制播放或暂停状态; x=0,禁用此功能。--> 
<param name="displaysize" value="0"><!--控制播放画面: x=0,原始大小; x=1,一半大小; x=2,2倍大小。--> 
<param name="enablefullscreen controls" value="1"><!--控制切换全屏: x=1,允许切换为全屏; x=0,禁用此功能。--> 
<param name="showaudio controls" value="1"><!--控制音量: x=1,允许调节音量; x=0,禁止音量调节。--> 
<param name="enablecontext menu" value="1"><!--控制快捷菜单: x=1,允许使用右键菜单; x=0,禁用右键菜单。--> 
<param name="showdisplay" value="1"><!--控制版权信息: x=1,显示电影及作者信息;x=0,不显示相关信息--> 
<param NAME="AutoStart" VALUE="-1"><!--是否自动播放--> 
<param NAME="Balance" VALUE="0"><!--调整左右声道平衡,同上面旧播放器代码--> 
<param name="enabled" value="-1"><!--播放器是否可人为控制--> 
<param NAME="EnableContextMenu" VALUE="-1"><!--是否启用上下文菜单--> 
<param NAME="url" VALUE="http://1.wma"> <!--播放的文件地址--><param NAME="PlayCount" VALUE="1"><!--播放次数控制,为整数--> 
<param name="rate" value="1"><!--播放速率控制,1为正常,允许小数,1.0-2.0--> 
<param name="currentPosition" value="0"><!--控件设置:当前位置--> 
<param name="currentMarker" value="0"><!--控件设置:当前标记--> 
<param name="defaultFrame" value=""><!--显示默认框架--> 
<param name="invokeURLs" value="0"><!--脚本命令设置:是否调用URL--> 
<param name="baseURL" value=""><!--脚本命令设置:被调用的URL--> 
<param name="stretchToFit" value="0"><!--是否按比例伸展--> 
<param name="volume" value="50"><!--默认声音大小0%-100%,50则为50%--> 
<param name="mute" value="0"><!--是否静音-- 
<param name="uiMode" value="mini"><!--播放器显示模式:Full显示全部;mini最简化;None不显示播放控制,只显示视频窗口;invisible全部不显示--><param name="windowlessVideo" value="0"><!--如果是0可以允许全屏,否则只能在窗口中查看--> 
<param name="fullScreen" value="0"><!--开始播放是否自动全屏--> 
<param name="enableErrorDialogs" value="-1"><!--是否启用错误提示报告--> 
<param name="SAMIStyle" value><!--SAMI样式--> 
<param name="SAMIFilename" value><!--字幕ID-->

实例代码

<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="700" height="400">
<param name="movie" value="http://player.video.qiyi.com/da0dd3d0918603a517a270b9ffe4b2d9/0/0/w_19rtosavsh.swf-albumId=8231726109-tvId=8231726109-isPurchase=0-cnId=24" />
<param name="quality" value="high" />
<param name="allowFullScreen" value="true" />
<param name="FlashVars" value="vcastr_file=12.flv&LogoText=description&BufferTime=3&IsAutoPlay=1"> <embed src="http://player.video.qiyi.com/da0dd3d0918603a517a270b9ffe4b2d9/0/0/w_19rtosavsh.swf-albumId=8231726109-tvId=8231726109-isPurchase=0-cnId=24" allowfullscreen="true" flashvars="vcastr_file=12.flv&IsAutoPlay=1&LogoUrl=images/logo.jpg" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="700" height="400"></embed>
</object>

  

效果如图

利用<object>和<embed>实现视频播放的更多相关文章

  1. 关于object和embed

    最近发现很久之前写的demo 在FF上有兼容问题, 主要发生在如下: 由于时间太久,自己都有点搞不清怎么写的,尤其是object标签,今天查了很多资料,总结一下object标签 在网页中正常显示fla ...

  2. OBJECT和EMBED标签(转载)

    一.介绍: 我们要在网页中正常显示flash内容,那么页面中必须要有指定flash路径的标 签.也就是OBJECT和EMBED标签.OBJECT标签是用于windows平台的IE浏览器的,而EMBED ...

  3. 转: object 和embed 标签播放flash

    一.介绍: 我们要在网页中正常显示flash内容,那么页面中必须要有指定flash路径的标 签.也就是OBJECT和 EMBED标签.OBJECT标签是用于windows平台的IE浏览器的,而EMBE ...

  4. OBJECT和EMBED标签

    一.介绍: 我们要在网页中正常显示flash内容,那么页面中必须要有指定flash路径的标 签.也就是OBJECT和EMBED标签.OBJECT标签是用于windows平台的IE浏览器的,而EMBED ...

  5. 在HTML中使用object和embed标签插入视频

    object标签和embed标签都能给页面添加多媒体内容: 一.object 对于object,w3c上定义object为一个嵌入的对象.可以使用此元素向您的 XHTML 页面添加多媒体.此元素允许您 ...

  6. 网页中多媒体对像标记<OBJECT>和<EMBED>

    在网页中常用object和embed标记插入的多媒体对象,比如FLASH,视频等. 用一个快播例子说明下这两个标记的使用和区别: <object classid="clsid:F3D0 ...

  7. html中object和embed标签的区别

    ♦object定义一个嵌入的对象.请使用此元素向您的 XHTML 页面添加多媒体.此元素允许您规定插入 HTML 文档中的对象的数据和参数,以及可用来显示和操作数据的代码. ♦<object&g ...

  8. ngx-bootstrap使用03 Alerts组件、利用Object.assign复制对象

    1 Alerts 该组件用于给用户操作提供反馈信息或者提供一些警告信息 2 用法 2.1 下载ngx-bootstrap依赖 参考博文:点击前往 2.2 在模块级别导入AlertModule模块 技巧 ...

  9. 利用Object.prototype.toString方法,实现比typeof更准确的type校验

    Object.prototype.toString方法返回对象的类型字符串,因此可以用来判断一个值的类型. 调用方法: Object.prototype.toString.call(value) 不同 ...

随机推荐

  1. Unity3D研究院之将UI的点击事件渗透下去(转)

    转自 http://www.xuanyusong.com/archives/4241 处理UI还有3D模型的点击推荐使用UGUI的这套事件系统,因为使用起来比较简洁,不需要自己用代码来发送射线,并且可 ...

  2. Android 使用MediaPlayer 播放 视频

    http://pan.baidu.com/s/1lgKLS package cn.bgxt.surfaceviewdemo; import java.io.File; import android.m ...

  3. CCCC L2-022. 重排链表

    题解:直接list模拟,头尾两个指针,分别将头尾元素push到另一个list里面,输处输入方式同上一篇 坑:第一发卡了第二个样例,第二发卡了第4个,莫名其妙,所以把两个代码合起来,然后强行ac了. # ...

  4. elasticsearch的重启

    没有重启的操作,只有关闭了再启动的操作. ps -ef | grep elastic e表示全部的进程,f表示展示进程间的相关关系,如父子进程. 然后找到你启动es的那个账号,不是root,一般是新建 ...

  5. find a way to escape--hdu1593

    题目链接 : http://acm.hdu.edu.cn/showproblem.php?pid=1593 找到二者角速度相等时水中人的R,在此之前二者保持在一条直线上,之后水中的人沿直线到岸边S点匀 ...

  6. java.io.File实战

    There are many things that can go wrong: A class works in Unix but doesn't on Windows (or vice versa ...

  7. redis 介绍

    缓存数据库介绍 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库,随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是 ...

  8. 【Mysql优化三章】第一章

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/Bv5f4b8Peex/article/details/78130845 如今网上的好多mysql优化 ...

  9. [javascript]编码&i字符串格式化&nput历史记录&清空模态框

    js中编码问题 https://www.haorooms.com/post/js_escape_encodeURIComponent 我在前端js添加时候创建dom时候,有汉字,发现是乱码就研究了下 ...

  10. 深入理解python之一——python3对象的一些特性

    文章使用markdown写的,编辑的时候行间距还可以,显示的时候行间距好小,我也没办法. 首先,需要明白的是python是一种解释性语言标准,他可以由c.java或者其他语言来实现.在python的标 ...