`

转: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>

 

分享到:
评论

相关推荐

    Object标签大全

    ### Object标签详解与属性解析 在HTML中,`&lt;object&gt;`标签被用于嵌入外部内容,如插件、媒体文件或其他HTML文档等。它提供了一种灵活的方式,使得网页能够集成来自不同来源的多媒体资源。本文将深入探讨`&lt;object&gt;`...

    Object-XML文件的相互转换分析

    此外,Spring还支持使用`&lt;bean&gt;`标签自定义bean的属性和依赖关系,使得XML配置更加灵活。 总的来说,Object-XML转换是软件开发中的关键技术,尤其在分布式系统和微服务架构中,它使得数据能够在不同组件间无缝传递...

    c#+MapObject实例

    此外,MapObject还支持查询、分析和数据显示控制,如符号化、标签、图例等。 总结一下,C#与MapObject的结合使得开发人员能够在.NET环境中创建功能丰富的GIS应用程序。通过理解MapObject的接口和工作原理,我们可以...

    flex LineChart实例

    Object, prevValue:Object, axis:IAxis):String`和`categoryAxisLabelFun(item:Object, prevValue:Object, axis:CategoryAxis, categoryItem:Object):String`,这些函数用于格式化图表中的数据标签。 ### 总结 此...

    实例分割coco标注数据集.zip

    4. **ID(Object IDs)**:用于区分同一类别内的不同实例,特别是在一个图像中有多个相同类别物体的情况下。 在处理“实例分割COCO标注数据集.zip”时,你需要解压文件并访问其中的内容,可能包括: 1. 图像文件...

    C#使用窗体标签页控件实例

    本实例将深入探讨如何在C#中有效地使用窗体标签页控件。 首先,你需要了解`TabControl`控件的基本属性、方法和事件。在Windows Forms应用中,你可以通过以下步骤添加窗体标签页控件: 1. 打开Visual Studio,创建...

    Object-C语言教程

    4. **UIButton, UILabel, UIImageView**:常见UI控件,按钮、标签和图像视图。 5. **手势识别(GestureRecognizer)**:处理用户的触摸事件。 五、Objective-C的现代特性 随着Swift的出现,Objective-C也引入了...

    基于Java的实例源码-面向对象的脚本语言 ObjectScript.zip

    描述"基于Java的实例源码-面向对象的脚本语言 ObjectScript.zip"进一步确认了这个资源是关于Java实现的ObjectScript的源代码实例,适合于那些想要深入理解如何在Java平台上构建面向对象脚本语言的开发者。...

    Struts2标签经典实例

    本实例将深入探讨Struts2标签的使用,帮助你更好地理解和应用这些功能强大的标签。 首先,Struts2标签的引入是为了替换传统的JSP脚本元素,如Java表达式`${}`和脚本let块,以减少业务逻辑和视图之间的耦合。这些...

    JSP自定义标签实例

    本实例将深入讲解如何实现一个基于JSP的自定义分页标签,并涉及到Java反射机制的应用。 首先,自定义标签的实现通常分为两部分:标签库描述文件(TLD,Tag Library Descriptor)和标签处理类(Tag Handler)。TLD是...

    jsp自定义标签实例

    首先,JSP自定义标签的工作原理是基于TLD(Tag Library Descriptor)文件,它定义了自定义标签的元数据,如标签名称、属性、返回类型等。在编写自定义标签时,我们需要创建一个Java类来处理标签逻辑,这个类通常会...

    Struts标签--本人常用

    Struts标签是Apache Struts框架中的重要组成部分,它提供了一种声明式编程的方式,使得开发者在JSP...在实际项目开发中,常常结合OGNL(Object-Graph Navigation Language)表达式,进一步增强标签的功能性和灵活性。

    flex中拖拉拽好实例objecthandles

    标签中的"flex air"提示我们这个实例可能还与Adobe Integrated Runtime(AIR)有关。AIR允许Flex应用程序运行在桌面环境,这意味着实例可能展示了如何在桌面环境中实现拖放功能,可能包括与桌面文件系统的交互。 在...

    C#使用窗体标签页控件实例源码

    在本实例中,"C#使用窗体标签页控件实例csharptabs"演示了如何在C#应用程序中实现多标签切换的效果,类似于网页浏览器的标签页功能。这个功能可以极大地提高用户体验,因为它减少了窗口的混乱,让用户能够更轻松地在...

    matlab简单代码-MATLAB GUI中的标签组件实例教程docx文档下载

    在MATLAB GUI中,标签组件(Label)是一种常用且重要的元素,主要用于标识和说明GUI中的不同区域和功能。本文将深入探讨MATLAB GUI中的标签组件,包括它的创建方法、属性及其应用。 首先,创建标签组件可以通过...

    xml转javaBean,javaBean转xml,xml标签大小写问题,以及对xml特殊符号的处理

    本文将深入探讨XML与JavaBean之间的转换、XML标签的大小写规则、XML特殊符号的处理以及CDATA的生成。 1. XML转JavaBean: 在Java编程中,XML数据经常需要转换为Java对象以便于操作。这一过程通常通过XML解析器来...

    Real-Time C++ Efficient Object-Oriented and Template Microcontroller Programming

    4. **微控制器编程实践**:这部分内容可能会涵盖具体的编程实例,展示如何在不同的微控制器平台上实现高效的实时应用。 5. **高级主题探讨**:除此之外,本书还可能涉及一些更高级的主题,例如低功耗设计、多核微...

    struct及其struct2.0标签(OGNL)讲解,有实例

    本教程将深入讲解Struts2中的一个重要概念——`struct`及其升级版`struct2.0`,同时会涉及到OGNL(Object-Graph Navigation Language)以及Struts2中的标签库。 首先,`struct`是Struts2框架的基础组成部分,它是...

    SuperObject_delphi_superobject_JSON_jsonparser_dotya_

    标签"dotya"可能指的是一个开发者或开发团队,他们可能对SuperObject进行了增强或者维护,提供了一些额外的工具或支持。这样的社区贡献对于开源项目来说至关重要,它们往往带来了更多的功能、优化和兼容性更新。 ...

    delphi 时间计算实例

    本文将通过实例讲解如何在Delphi中进行时间计算,并结合鼠标控制的相关知识,帮助你更好地理解和应用。 首先,我们来看时间计算的基本概念。在Delphi中,可以使用TDateTime类型的变量来表示日期和时间,它是一个双...

Global site tag (gtag.js) - Google Analytics