HTML5 audio标签使用js进行播放控制实例


Posted in HTML / CSS onApril 24, 2015

<audio>标签可以在HTML5浏览器中播放音频文件。

<audio>默认提供一个控制面板,但是有些时候我们只需要播放声音,控制面板由我们自己来定义其显示的状态。

这里我们可以使用JS来进行控制,代码如下:

复制代码
代码如下:

var audio ;
window.onload = function(){
initAudio();
}
var initAudio = function(){
//audio = document.createElement("audio")
//audio.src='Never Say Good Bye.ogg'
audio = document.getElementById('audio');
}
function getCurrentTime(id){
alert(parseInt(audio.currentTime) + ':秒');
}

function playOrPaused(id,obj){
if(audio.paused){
audio.play();
obj.innerHTML='暂停';
return;
}
audio.pause();
obj.innerHTML='播放';
}

function hideOrShowControls(id,obj){
if(audio.controls){
audio.removeAttribute('controls');
obj.innerHTML = '显示控制框'
return;
}
audio.controls = 'controls';
obj.innerHTML = '隐藏控制框'
return;
}
function vol(id,type , obj){
if(type == 'up'){
var volume = audio.volume + 0.1;
if(volume >=1 ){
volume = 1 ;

}
audio.volume = volume;
}else if(type == 'down'){
var volume = audio.volume - 0.1;
if(volume <=0 ){
volume = 0 ;
}
audio.volume = volume;
}
document.getElementById('nowVol').innerHTML = returnFloat1(audio.volume);
}
function muted(id,obj){
if(audio.muted){
audio.muted = false;
obj.innerHTML = '开启静音';
}else{
audio.muted = true;
obj.innerHTML = '关闭静音';
}
}
//保留一位小数点

function returnFloat1(value) {
value = Math.round(parseFloat(value) * 10) / 10;
if (value.toString().indexOf(".") < 0){
value = value.toString() + ".0";
}
return value;
}


调用方式如下:

复制代码
代码如下:

<a href="javascript:void(0);" onclick="getCurrentTime('firefox');">获取播放时间</a>
<a href="javascript:void(0);" onclick="playOrPaused('firefox',this);">播放</a>
<a href="javascript:void(0);" onclick="hideOrShowControls('firefox',this);">隐藏控制框</a>
<a href="javascript:void(0);" onclick="muted('firefox',this);">开启静音</a>
<input type="button" value="+" id="upVol" onclick="vol('firefox' , 'up' , this )"/>音量<input type="button" value="-" onclick="vol('firefox' , 'down' ,this )"/>
<audio src="/images/audio/Never Say Good Bye.ogg" id="audio" controls="controls" ></audio>

当前音量:<span id = "nowVol"> - </span>

HTML / CSS 相关文章推荐
CSS3制作半透明边框(Facebox)类似渐变
Dec 09 HTML / CSS
CSS3中HSL和HSLA的简单使用示例
Jul 14 HTML / CSS
实例讲解CSS3中的box-flex弹性盒属性布局
Jun 09 HTML / CSS
CSS3中Animation动画属性用法详解
Jul 04 HTML / CSS
CSS3移动端vw+rem不依赖JS实现响应式布局的方法
Jan 23 HTML / CSS
如何使用html5与css3完成google涂鸦动画
Dec 16 HTML / CSS
HTML5使用DOM进行自定义控制示例代码
Jun 08 HTML / CSS
html5 利用canvas实现超级玛丽简单动画
Sep 06 HTML / CSS
HTML5触摸事件演化tap事件介绍
Mar 25 HTML / CSS
详解webapp页面滚动卡顿的解决办法
Dec 26 HTML / CSS
Html5饼图绘制实现统计图的方法
Aug 05 HTML / CSS
amazeui时间组件的实现示例
Aug 18 HTML / CSS
HTML5全屏(Fullscreen)API详细介绍
Apr 24 #HTML / CSS
HTML5 video播放器全屏(fullScreen)方法实例
Apr 24 #HTML / CSS
HTML5 video标签(播放器)学习笔记(二):播放控制
Apr 24 #HTML / CSS
HTML5 video标签(播放器)学习笔记(一):使用入门
Apr 24 #HTML / CSS
HTML5 Video标签的属性、方法和事件汇总介绍
Apr 24 #HTML / CSS
HTML5 Canvas中绘制椭圆的4种方法
Apr 24 #HTML / CSS
HTML5 Convas APIs方法详解
Apr 24 #HTML / CSS
You might like
【COS正片】蕾姆睡衣cos,纯洁可爱被治愈了 cn名濑弥七
2020/03/02 日漫
用ADODB来让PHP操作ACCESS数据库的方法
2006/12/31 PHP
discuz论坛 用户登录 后台程序代码
2008/11/27 PHP
一个完整的PHP类包含的七种语法说明
2015/06/04 PHP
变量在 PHP7 内部的实现(二)
2015/12/21 PHP
告诉大家什么是JSON
2008/06/10 Javascript
jQuery Ajax方法调用 Asp.Net WebService 的详细实例代码
2011/04/27 Javascript
JavaScript更改原始对象valueOf的方法
2015/03/19 Javascript
js实现可旋转的立方体模型
2016/10/16 Javascript
JavaScript与JQUERY获取元素的宽、高和位置
2017/02/26 Javascript
vue项目中引入noVNC远程桌面的方法
2018/03/05 Javascript
layui获取多选框中的值方法
2018/08/15 Javascript
基于jquery实现的tab选项卡功能示例【附源码下载】
2019/06/10 jQuery
如何通过JS实现转码与解码
2020/02/21 Javascript
JavaScript对象访问器Getter及Setter原理解析
2020/12/08 Javascript
[03:57]《不朽》——2015DOTA2国际邀请赛—中国军团出征主题曲MV
2015/07/15 DOTA
Python、Javascript中的闭包比较
2015/02/04 Python
详解python基础之while循环及if判断
2017/08/24 Python
Python基于回溯法子集树模板解决旅行商问题(TSP)实例
2017/09/05 Python
Python引用传值概念与用法实例小结
2017/10/07 Python
python处理csv数据动态显示曲线实例代码
2018/01/23 Python
浅析Python3爬虫登录模拟
2018/02/07 Python
python turtle 绘制太极图的实例
2019/12/18 Python
使用tensorflow显示pb模型的所有网络结点方式
2020/01/23 Python
Python基于yield遍历多个可迭代对象
2020/03/12 Python
瑞贝卡·泰勒官方网站:Rebecca Taylor
2016/09/24 全球购物
芬兰攀岩、山地运动和户外活动用品购物网站:Bergfreunde
2016/10/06 全球购物
绿色美容,有机护肤品和化妆品:Safe & Chic
2018/10/29 全球购物
德国咖啡批发商:Coffeefair
2019/08/26 全球购物
阿迪达斯印尼官方网站:adidas印尼
2020/02/10 全球购物
weblogic面试题
2016/03/07 面试题
领导干部培训感言
2014/01/23 职场文书
工作散漫检讨书
2014/09/16 职场文书
干部四风问题整改措施思想汇报
2014/10/13 职场文书
小学生班干部竞选稿
2015/11/20 职场文书
分析mysql中一条SQL查询语句是如何执行的
2021/06/21 MySQL