`

转:Object标签实例

阅读更多

上一阵子倒腾web播放器时找了好多有关Object标签的实例,找到了一个比较实用的(具体链接找不到了),传到这里来以备不时之需。

另外,这个例子界面比较全面,可以试着修改Object标签的各个属性,查看Object的播放界面的变化来加深对各个标签的理解,我就是这么做的,后面的好多标签属性都是个人按照个人看到的实际情况做的注释。

1、HTML:

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>Window Media Player 播放器</title>
<body onload="init();">
<table id=table01>
<tr>
	<td>
	<object classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" id="MediaPlayer1" width="286" height="225" STANDBY="Loading Windows Media Player components..." TYPE="application/x-oleobject">
			<param name="AudioStream" value="-1">
			<param name="AutoSize" value="-1">
			<!--是否自动调整播放大小-->
			<param name="AutoStart" value="-1">
			<!--是否自动播放-->
			<param name="AnimationAtStart" value="-1">
			<param name="AllowScan" value="-1">
			<param name="AllowChangeDisplaySize" value="-1">
			<param name="AutoRewind" value="0">
			<param name="Balance" value="0">
			<!--左右声道平衡,最左-9640,最右9640-->
			<param name="BaseURL" value>
			<param name="BufferingTime" value="15">
			<!--缓冲时间-->
			<param name="CaptioningID" value>
			<param name="ClickToPlay" value="-1">
			<param name="CursorType" value="0">

			<!--当前播放进度 -1 表示不变,0表示开头 单位是秒,比如10表示从第10秒处开始播放,值必须是-1.0或大于等于0-->
			<param name="CurrentPosition" value="0">
			
			<param name="CurrentMarker" value="0">
			<param name="DefaultFrame" value>
			<param name="DisplayBackColor" value="0">
			<param name="DisplayForeColor" value="16777215">
			<param name="DisplayMode" value="0">
			<param name="DisplaySize" value="0">
			<!--视频1-50%, 0-100%, 2-200%,3-全屏 其它的值作0处理,小数则采用四舍五入然后按前的处理-->
			<param name="Enabled" value="-1">
			<param name="EnableContextMenu" value="-1">
			<!--是否用右键弹出菜单控制-->
			<param name="EnablePositionControls" value="-1">
			<param name="EnableFullScreenControls" value="-1">
			<param name="EnableTracker" value="-1">
			<!--是否允许拉动播放进度条到任意地方播放-->
			<param name="Filename" value="" valuetype="ref">
			<param name="InvokeURLs" value="-1">
			<param name="Language" value="-1">
			<param name="Mute" value="0">
			<!--是否静音-->
			<param name="PlayCount" value="10">
			<!--重复播放次数,0为始终重复-->
			<param name="PreviewMode" value="-1">
			<param name="Rate" value="1">
			<!--播放速度1.0-2.0倍的速度播放-->
			<param name="SAMILang" value>
			<param name="SAMIStyle" value>
			<param name="SAMIFileName" value>
			<!--选择同时播放(伴音)的歌曲-->
			<param name="SelectionStart" value="-1">
			<param name="SelectionEnd" value="-1">
			<param name="SendOpenStateChangeEvents" value="-1">
			<param name="SendWarningEvents" value="-1">
			<param name="SendErrorEvents" value="-1">
			<param name="SendKeyboardEvents" value="0">
			<param name="SendMouseClickEvents" value="0">
			<param name="SendMouseMoveEvents" value="0">
			
			<param name="SendPlayStateChangeEvents" value="-1">
			
			<!--是否显示字幕,为一块黑色,下面会有一大块黑色,一般不显示-->
			<param name="ShowCaptioning" value="0">
			

			<!--是否显示控制,比如播放,停止,暂停,进度调整音量调节等-->
			<param name="ShowControls" value="-1">
			

			<!--是否显示音量控制-->
			<param name="ShowAudioControls" value="-1">
			

			<!--显示节目信息,比如版权等-->
			<param name="ShowDisplay" value="0">

			<!--一条框,在下面,有往下箭头-->
			<param name="ShowGotoBar" value="0">
			

			<!--是否显示往前往后及列表,如果显示一般也都是灰色不可控制,-1表示显示,其他值表示不显示-->
			<param name="ShowPositionControls" value="0">


			<!--当前播放信息,显示是否正在播放,及总播放时间和当前播放到的时间,-1表示显示,其他值表示不显示-->
			<param name="ShowStatusBar" value="-1">			

			<!--是否显示当前播放跟踪条,即当前的播放进度条,-1表示显示进度条,其他值表示不显示-->
			<param name="ShowTracker" value="-1">

			<param name="TransparentAtStart" value="0">
			
			<!--显示部的宽部,如果小于视频宽,则最小为视频宽,或者加大到指定值,并自动加大高度.此改变只改变四周的黑框大小,不改变视频大小-->
			<param name="VideoBorderWidth" value="0">


			<!--显示黑色框的颜色, 为RGB值,比如ffff00为黄色-->
			<param name="VideoBorderColor" value="0">
			

			<param name="VideoBorder3D" value="0">
		
		<!--音量大小,负值表示是当前音量的减值,值自动会取绝对值,最大为0,最小为-9640-->
		<param name="Volume" value="0">

		<!--是否允许全屏,0表示可以全屏,其他值只能在窗口中查看-->
		<param name="WindowlessVideo" value="1">
			
	</object>
	</td>
	<td>
			<div id=playListTitle>Play List:</div>
			<select id=playList size=2 ondragover="playList_dragOver();" ondragenter="playList_dragEnter();"
			 ondrop="playList_drop();" onkeydown="playList_keyDown();" ondblclick="playList_dblClick();">
			</select>
	</td>
</tr>
</table>

<div id=musicList ondragstart="musicList_dragStart();">
<div id=musicListTitle>All Music</div>
<a href="a.VOB" onclick="addMusic();">测试视频</a><br>
<hr>
Tips: 把歌曲拖入播放列表
</div>
<div id=info></div>
<body>
</html>

2、CSS:

 <style>
body {
        overflow:auto;
        font-size:12px;
        cursor:default;
}

#table01 {
        font-size:12px;
        background-Color:black;
        color:white;
        text-align:center;
}

#playListTitle {
        background-Color:#001122;
        color:white;
        font-size:12px;
        font-weight:bold;
        width:100%;
        height:16px;
        padding:2px;
}

#playList {
        width:150px;
        height:225px;
        margin:0px;
        font-size:12px;
        background-Color:black;
        color:white;
}

#musicList {
        width:200px;
        border:buttonface 4px groove;
        height:80px;
        position:absolute;
        right:5px;
        top:5px;
}

#musicListTitle {
        font-size:13px;
        width:100%;
        height:20px;
        background-Color:#C5FFC5;
        padding:3px;
        font-weight:bold;
}

#musicList a {
        text-decoration:none;
        width:100%;
        height:20px;
        line-height:20px;
        font-szie:20px;
        line-height:20px;
        padding-top:5px;
        padding-left:10px;
}

#musicList a:hover {
        background-Color:#E5FFE5;
}
</style>

3、JS:

<script>
function playList_dragOver(){
        event.returnValue=false;
}

function playList_dragEnter(){
        event.returnValue=false;
        event.dataTransfer.dropEffect='link';
}

function addMusic(){
        if(event.srcElement.tagName=='A'){
                strTxt=event.srcElement.innerText;
                strURL=event.srcElement.href;
                playList.innerHTML="";
                playList.options[0]=new Option(strTxt,strURL);
                playList.options[0].selected=true;
        }
        event.returnValue=false;
       
        playList_dblClick();
        return(false);
}

function playList_drop(){
        strTxt=unescape(event.dataTransfer.getData('Text').split(":")[0]);
        strURL=unescape(event.dataTransfer.getData('Text').split(":")[1]);
        playList.options[playList.options.length]=new Option(strTxt,strURL);
}

function playList_keyDown(){
        if(event.keyCode==46){
                try{
                        playList.options[playList.options.selectedIndex].outerHTML="";
                }catch(e){}
                return(false);
        }
        if(event.keyCode==13){
                playList_dblClick();
                return(false);
        }
}

function playList_dblClick(){
        MediaPlayer1.detachEvent("PlayStateChange",checkPlayStatus);
        MediaPlayer1.fileName=playList.value;
		MediaPlayer1.currentPosition=1*60;
        MediaPlayer1.play();
        setTimeout('MediaPlayer1.play();MediaPlayer1.attachEvent("PlayStateChange",checkPlayStatus);',1000);
}

function musicList_dragStart(){
        if(event.srcElement.tagName=='A'){
                event.dataTransfer.setData('Text',escape(event.srcElement.innerText)+":"+escape(event.srcElement.href));
        }else{
                return(false);
        }
}

function init(){
        MediaPlayer1.AutoRewind=false;
        MediaPlayer1.AutoStart=true;
        MediaPlayer1.SendPlayStateChangeEvents=true;
        MediaPlayer1.attachEvent("PlayStateChange",checkPlayStatus);
}

function checkPlayStatus(oldState,newState){
        try{
                if(MediaPlayer1.PlayState==0){
                        MediaPlayer1.detachEvent("PlayStateChange",checkPlayStatus);
                        MediaPlayer1.stop();
                        if(playList.options.selectedIndex<playList.options.length-1){
                                playList.options[playList.options.selectedIndex+1].selected=true;
                        }else{
                                playList.options[0].selected=true;
                        }
                        MediaPlayer1.fileName=playList.value;
						//alert(MediaPlayer1.fileName);
						MediaPlayer1.CurrentPosition="1:20";
                        MediaPlayer1.play();
                        setTimeout('MediaPlayer1.play();MediaPlayer1.attachEvent("PlayStateChange",checkPlayStatus);',1000);
                }
        }catch(e){}
}
</script>

 

分享到:
评论

相关推荐

    自定义标签实例java源代码

    Java生成自定义控件源代码,颜色选择下拉框演示,带图标下拉框的单元绘制器,从JLabel类扩展,实现ListCellRenderer接口,采用Object二维数组,用于初始化下拉框,参数依次为图标,显示文本,提示文本,初学者参考。

    日志:具有详细信息的前端后端控制台日志包装器

    标签:String:默认| 使用相同标签创建的多个日志实例将使用相同的功能和选项 silentTag:布尔值:false | 如果启用,将删除日志消息之前的标签标签 默认值:Object:详细程度,颜色,colorMap | 设置Log.prototype....

    字符串格式化实例PyFormat.zip

    PyFormat 是记录 Python 字符串格式化系统的实例的项目。python.org 的官方文档中,包含了大量的关于格式化语法规范的信息,以及一些例子,但他们的文档太理论和技术化了。这个项目把常用格式化的新老风格直观地展示...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例193 div标签设计论坛帖子浏览页面 234 实例194 标签设计论坛后台管理页面 236 实例195 标签设计页面布局 237 实例196 页面布局(2列左窄右宽高度自适应) 240 实例197 页面布局(2列固定宽度+头部+导航+尾部) 242 ...

    JAVA上百实例源码以及开源项目源代码

     Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象,得到Graphics实例,得到Image实例,填充颜色数组数据,初始化颜色数组。...

    jQuery完全实例.rar

    当你创建单个元素时,请使用闭合标签或 XHTML 格式。例如,创建一个 span ,可以用 $("&lt;span/&gt;") 或 $("&lt;span&gt;&lt;/span&gt;") ,但不推荐 $("&lt;span&gt;") --------------------------------------------------------------...

    FusionCharts图片保存实例-绝对可用

    FusionCharts图片保存实例 只要将此实例部署到服务器端,通过IE客户端访问test.HTML就可用 关键点是下面的脚本: ...要实现图表保存,必须要以JS的方式展示SWF,若用OBJECT标签展示是无法实现下载图片的;

    jQuery添加和删除指定标签的方法

    jQuery如何为指定标签添加和删除一个样式: 在网页的实际应用中,需要根据不同的条件来改变元素的CSS样式,通过动态的给元素添加删除一个CSS类可以实现此功能,下面通过实例来介绍一下如何实现此种功能。 一.使用...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例144 Object类中线程相关的方法 187 实例145 哲学家就餐问题 189 实例146 使用信号量实现线程同步 190 实例147 使用原子变量实现线程同步 191 实例148 使用事件分配线程更新Swing控件 193 实例149 使用...

    python 文本单词提取和词频统计的实例

    这些对文本的操作经常用到, 那我就总结一下。 陆续补充。...class DocProcess(object): @classmethod def strip_html(cls, text): """ Delete html tags in text. text is String """ new_text = "

    ScriptableObject-Instances:基于 Ryan Hipple 的 Unite Austin 2017 演讲。 此版本还允许您拥有实例化对象

    ScriptableObject-Instances 基于 Ryan ...主要特点游戏对象标签全局脚本对象变量全局脚本对象事件实例化的可编写脚本的对象变量实例化的可编写脚本的对象事件代码生成器更多的安装手动安装下载存储库并将文件放在名为...

    wp-customize-object-selector:自定义WordPress的对象选择器插件

    自定义对象选择器 添加一个Customizer控件以选择一个或多个帖子... 此插件升级了“页面首页”和“帖子页面”控件,以改用Customize Object Selector控件,不仅允许按需通过Ajax加载页面列表,还可以搜索列表。 当

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例193 div标签设计论坛帖子浏览页面 234 实例194 标签设计论坛后台管理页面 236 实例195 标签设计页面布局 237 实例196 页面布局(2列左窄右宽高度自适应) 240 实例197 页面布局(2列固定宽度+头部+导航+尾部) 242 ...

    ASP.net实例光盘源码:

    Sample_02_02/ObjectPage.aspx 创建页面中的对象 Sample_02_03/Default.aspx 页面的生命周期 第3章(/ch03/) Sample_03_01/ClientInfo.aspx 获取客户端信息 Sample_03_01/Dir.aspx 目的 ...

    JAVA上百实例源码以及开源项目

     Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象,得到Graphics实例,得到Image实例,填充颜色数组数据,初始化颜色数组。...

Global site tag (gtag.js) - Google Analytics