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中的元素过渡属性transition示例详解
Nov 30 HTML / CSS
CSS中垂直居中的简单实现方法
Jul 06 HTML / CSS
基于css3 animate制作绚丽的动画效果
Nov 24 HTML / CSS
css3实现文字扫光渐变动画效果的示例
Nov 07 HTML / CSS
HTML5 File接口在web页面上使用文件下载
Feb 27 HTML / CSS
html5 web本地存储将取代我们的cookie
Dec 26 HTML / CSS
用HTML5实现网站在windows8中贴靠的方法
Apr 21 HTML / CSS
HTML5的表单(绝对特别强大的功能)使用示例
Jun 20 HTML / CSS
实例教程 HTML5 Canvas 超炫酷烟花绽放动画实现代码
Nov 05 HTML / CSS
HTML5 video标签(播放器)学习笔记(二):播放控制
Apr 24 HTML / CSS
跨域修改iframe页面内容详解
Oct 31 HTML / CSS
教你做个可爱的css滑动导航条
Jun 15 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
深入PHP数据缓存的使用说明
2013/05/10 PHP
PHP使用fopen与file_get_contents读取文件实例分享
2016/03/04 PHP
ECSHOP完美解决Deprecated: preg_replace()报错的问题
2016/05/17 PHP
PHP实现动态压缩js与css文件的方法
2018/05/02 PHP
PHP实现小程序批量通知推送
2018/11/27 PHP
不能再简单的无闪刷新验证码原理很简单
2007/11/05 Javascript
jquery垂直公告滚动实现代码
2013/12/08 Javascript
JS文本获得焦点清除文本文字的示例代码
2014/01/13 Javascript
jQuery中data()方法用法实例
2014/12/27 Javascript
深入剖析JavaScript编程中的对象概念
2015/10/21 Javascript
jquery实现倒计时效果
2015/12/14 Javascript
学JavaScript七大注意事项【必看】
2016/05/04 Javascript
微信小程序商城项目之侧栏分类效果(1)
2017/04/17 Javascript
JS中将多个逗号替换为一个逗号的实现代码
2017/06/23 Javascript
JavaScript函数绑定用法实例分析
2017/11/14 Javascript
基于jQuery实现定位导航位置效果
2017/11/15 jQuery
js操作二进制数据方法
2018/03/03 Javascript
详解vue axios二次封装
2018/07/22 Javascript
解决echarts vue数据更新,视图不更新问题(echarts嵌在vue弹框中)
2020/07/20 Javascript
JavaScript中常用的3种弹出提示框(alert、confirm、prompt)
2020/11/10 Javascript
Python中字典(dict)和列表(list)的排序方法实例
2014/06/16 Python
python3生成随机数实例
2014/10/20 Python
Python解析最简单的验证码
2016/01/07 Python
Python对象转换为json的方法步骤
2019/04/25 Python
基于django 的orm中非主键自增的实现方式
2020/05/18 Python
CSS3实现彩色进度条动画的示例
2020/10/29 HTML / CSS
美国波西米亚风格精品店:South Moon Under
2019/10/26 全球购物
奥地利婴儿用品和玩具购物网站:baby-markt.at
2020/01/26 全球购物
super()与this()的区别
2016/01/17 面试题
初中生评语大全
2014/04/24 职场文书
高二学生评语大全
2014/04/25 职场文书
劳动竞赛活动总结
2014/05/05 职场文书
工作求职信
2014/07/04 职场文书
班级活动总结格式
2014/08/30 职场文书
平凡的世界读书笔记
2015/06/25 职场文书
有关朝花夕拾的读书笔记
2015/06/29 职场文书