javascript 播放器 控制


Posted in Javascript onJanuary 22, 2007

详细参数可查询MSDN
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmplay/mmp_sdk/settingsobject.asp

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<link href="style/style.css" rel="stylesheet" type="text/css">

<script language="JavaScript">
var state;

//初始化
function playerinit()
{
 player.url="mp3.m3u";
 player.settings.autoStart = false ;
}

//播放
function play()
{
 if (player.controls.isavailable('play'))
 {
  player.controls.play();
  state=setInterval("updatetime()",1000);
  playerinfo.innerHTML = "播放";
 }
}

//暂停
function pause()
{
 if (player.controls.isavailable('pause'))
 {
  player.controls.pause();
  clearInterval(state);
  playerinfo.innerHTML = "暂停";
 }
}

//停止
function stop()
{
 if (player.controls.isavailable('stop'))
 {
  player.controls.stop();
  clearInterval(state);
  playerinfo.innerHTML = "停止";
 }
}

//前首
function previous()
{
 if (player.controls.isavailable( 'previous' ))
 {
  player.controls.previous();
  playerinfo.innerHTML = "前一首";
 }
}

//后首
function next()
{
 if (player.controls.isavailable( 'next' ))
 {
  player.controls.next();
  playerinfo.innerHTML = "下一首";
 }
}

//?
function step()
{
 if (player.controls.isavailable( 'step' ))
 player.controls.step( 1 );
}

//音量-
function voldown()
{
 if ( player.settings.volume < 5 )
 {
  player.settings.volume = 0;
  playerinfo.innerHTML = "0";
 }
 else
 {
  player.settings.volume -= 5;
  playerinfo.innerHTML = player.settings.volume;
 }
}

//音量+
function volup()
{
 if ( player.settings.volume > 95 )
 {
  player.settings.volume = 100;
  playerinfo.innerHTML = "100";
 }
 else
 {
  player.settings.volume += 5;
  playerinfo.innerHTML = player.settings.volume;
 }
}

//静音
function mute()
{
 player.settings.mute = !player.settings.mute;
}

//声道
function balance()
{
 switch (player.settings.balance)
 {
  case 0:
   player.settings.balance = 100;
   playerinfo.innerHTML = '左声道';
   break;
  case 100:
   player.settings.balance = -100;
   playerinfo.innerHTML = '右声道';
   break;
  case -100:
   player.settings.balance = 0;
   playerinfo.innerHTML = '全声道';
   break;
  default :
   player.settings.balance = 0;
   playerinfo.innerHTML = '全声道';
   break;
 }
}

//更新时间
function updatetime()
{
 playerinfo.innerHTML = player.controls.currentPositionString + " | " + player.currentMedia.durationString;
}

</script>
</head>
<body onload="playerinit();">
<table width="300">
  <tr>
    <td><object id="player" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" type="application/x-oleobject" width="300" height="60">
      <param name="autoStart" value="false">
      <param name="balance" value="0">
      <param name="currentPosition" value="0">
      <param name="currentMarker" value="0">
      <param name="enableContextMenu" value="true">
      <param name="enableErrorDialogs" value="false">
      <param name="enabled" value="true">
      <param name="fullScreen" value="false">
      <param name="invokeURLs" value="false">
      <param name="mute" value="true">
      <param name="playCount" value="1">
      <param name="rate" value="1">
      <param name="uiMode" value="none">
      <param name="volume" value="100">
    </object></td>
  </tr>
  <tr>
    <td><span id="playerinfo"></span></td>
  </tr>
  <tr>
    <td>
      <div align="center">
<input type="button" onmouseover=this.className="but12"; onmouseout=this.className="but11"; name="previous" title="上一首" onclick="previous();">
<input type="button" onmouseover=this.className="but22"; onmouseout=this.className="but21"; name="play" title="播放" onclick="play();">
<input type="button" onmouseover=this.className="but32"; onmouseout=this.className="but31"; name="pause" title="暂停" onclick="pause();">
<input type="button" onmouseover=this.className="but42"; onmouseout=this.className="but41"; name="stop" title="停止" onclick="stop();">
<input type="button" onmouseover=this.className="but52"; onmouseout=this.className="but51"; name="next" title="下一首" onclick="next();">
<input type="button" onmouseover=this.className="but62"; onmouseout=this.className="but61"; name="voldown" title="音量-" onclick="voldown();">
<input type="button" onmouseover=this.className="but62"; onmouseout=this.className="but61"; name="volup" title="音量+" onclick="volup();">
<input type="button" onmouseover=this.className="but62"; onmouseout=this.className="but61"; name="mute" title="静音" onclick="mute();">
<input type="button" onmouseover=this.className="but62"; onmouseout=this.className="but61"; name="balance" title="声道" onclick="balance();">
   </div>
 </td>
  </tr>
</table>
<script language = "JavaScript"  for = player event = playstatechange(newstate)>
switch (newstate){
  case 1:
   playerinfo.innerHTML = "停止";
   break;
  case 2:
   playerinfo.innerHTML = "暂停";
   break;
  case 3:
   playerinfo.innerHTML = "正在播放";
   break;
  case 4:
   playerinfo.innerHTML = "4";
   break;
  case 5:
   playerinfo.innerHTML = "5";
   break;
  case 6:
   playerinfo.innerHTML = "正在缓冲...";
   break;
  case 7:
   playerinfo.innerHTML = "7";
   break;
  case 8:
   playerinfo.innerHTML = "8";
   break;
  case 9:
   playerinfo.innerHTML = "正在连接...";
   break;
  case 10:
   playerinfo.innerHTML = "准备就绪。欢迎光临<a href='http://mp3.asp2004.net'>http://mp3.asp2004.net</a>";
   break;
  case 11:
   playerinfo.innerHTML = "11";
   break;
  default:
   playerinfo.innerHTML = "";
}
</script>

</body>
</html>

Javascript 相关文章推荐
JavaScript flash复制库类 Zero Clipboard
Jan 17 Javascript
jQuery学习笔记(2)--用jquery实现各种模态提示框代码及项目构架
Apr 08 Javascript
js简易namespace管理器 实例代码
Jun 21 Javascript
JQ获取动态加载的图片大小的正确方法分享
Nov 08 Javascript
详解AngularJS控制器的使用
Mar 09 Javascript
几句话带你理解JS中的this、闭包、原型链
Sep 26 Javascript
webpack入门必知必会
Jan 16 Javascript
浅谈angular2 组件的生命周期钩子
Aug 12 Javascript
vue实现在一个方法执行完后执行另一个方法的示例
Aug 25 Javascript
vue element动态渲染、移除表单并添加验证的实现
Jan 16 Javascript
Vee-validate 父组件获取子组件表单校验结果的实例代码
May 20 Javascript
vue中更改数组中属性,在页面中不生效的解决方法
Oct 30 Javascript
JAVASCRIPT HashTable
Jan 22 #Javascript
Maps Javascript
Jan 22 #Javascript
自适应高度框架 ----属个人收藏内容
Jan 22 #Javascript
Opacity.js
Jan 22 #Javascript
html读出文本文件内容
Jan 22 #Javascript
用ADODB.Stream转换
Jan 22 #Javascript
Web层改进II-用xmlhttp 无声息提交复杂表单
Jan 22 #Javascript
You might like
phpmyadmin 常用选项设置详解版
2010/03/07 PHP
PHPwind整合最土系统用户同步登录实现方法
2010/12/08 PHP
php实现HTML实体编号与非ASCII字符串相互转换类实例
2016/11/02 PHP
ThinkPHP框架表单验证操作方法
2017/07/19 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
2017/11/16 PHP
用 Javascript 验证表单(form)中的单选(radio)值
2009/09/08 Javascript
iframe自适应宽度、高度 ie6 7 8,firefox 3.86下测试通过
2010/07/29 Javascript
JS 两个字符串时间的天数差计算
2013/08/25 Javascript
基于jquery实现的图片在各种分辨率下未知的容器内上下左右居中
2014/05/11 Javascript
node.js中的http.request方法使用说明
2014/12/14 Javascript
JavaScript常用小技巧小结
2014/12/29 Javascript
浅谈Javascript中的Function与Object
2015/01/26 Javascript
JavaScript中数组添加值和访问值常见问题
2016/02/06 Javascript
谈谈因Vue.js引发关于getter和setter的思考
2016/12/02 Javascript
详解webpack性能优化——DLL
2017/10/20 Javascript
vue生成token并保存到本地存储中
2018/07/17 Javascript
JS函数内部属性之arguments和this实例解析
2018/10/07 Javascript
手把手15分钟搭一个企业级脚手架
2019/09/16 Javascript
原生js实现贪食蛇小游戏的思路详解
2019/11/26 Javascript
python实现得到一个给定类的虚函数
2014/09/28 Python
python PyTorch预训练示例
2018/02/11 Python
python利用跳板机ssh远程连接redis的方法
2019/02/19 Python
Django Rest framework认证组件详细用法
2019/07/25 Python
django的model操作汇整详解
2019/07/26 Python
wxpython+pymysql实现用户登陆功能
2019/11/19 Python
python使用pip安装SciPy、SymPy、matplotlib教程
2019/11/20 Python
python多进程并发demo实例解析
2019/12/13 Python
python装饰器代替set get方法实例
2019/12/19 Python
Python程序控制语句用法实例分析
2020/01/14 Python
教师求职自荐信
2014/03/09 职场文书
2015年中秋节演讲稿
2015/03/20 职场文书
原告离婚代理词
2015/05/23 职场文书
《一面五星红旗》教学反思
2016/02/23 职场文书
小学生六年级作文之关于感恩
2019/08/16 职场文书
Shell脚本一键安装Nginx服务自定义Nginx版本
2022/03/20 Servers
2022漫威和DC电影上映作品
2022/04/05 欧美动漫