audio最简单原始的播放、暂停、停止、静音、音量大小控制的功能,注意某些浏览器会有权限无法自动播放噢(video也会如此)
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>audio声音控制</title>
<script type="text/javascript">
//注意某些浏览器有权限无法自动播放
//声音控制
var my_audio={
obj:null,
is_auto_play:false,
is_loop:false,
set:function(a){
var self=this;
self.obj=new Audio(a.url);
if(a.auto){
self.is_auto_play=true;
self.play();
}
if(a.loop){
self.is_loop=true;
}
},
play:function(){
var self=this;
self.obj.play();
if(self.is_loop){
self.obj.onended = function() {
self.play();
};
}
},
pause:function(){
var self=this;
self.obj.pause();
},
stop:function(){
var self=this;
self.obj.pause();
self.obj.currentTime = 0.0;
},
muted:function(){
var self=this;
self.obj.muted ? self.obj.muted = false : self.obj.muted = true;
},
volume_add:function(){
var self=this;
self.obj.volume = self.obj.volume + 0.1;
},
volume_minus:function(){
var self=this;
self.obj.volume = self.obj.volume - 0.1;
},
init:function(a){
var c = function(s) {
var r={};
for (var k in s) {
r[k] = typeof s[k]==="object" ? c(s[k]) : s[k];
}
return r;
}
var self = c(my_audio);
self.set(a);
return self;
}
} var audio_bg=my_audio.init({url:"video/bg.mp3",auto:true});
var audio_gift=my_audio.init({url:"video/gift.mp3",loop:true});
var audio_bomb=my_audio.init({url:"video/bomb.mp3"}); </script>
</head> <body>
<br><br><br><br><br>
<a href="javascript:audio_bg.play();">播放背景</a>
<a href="javascript:audio_bg.pause();">暂停背景</a>
<a href="javascript:audio_bg.stop();">停止背景</a>
<a href="javascript:audio_bg.muted();">静音背景</a>
<a href="javascript:audio_bg.volume_add();">增加背景音</a>
<a href="javascript:audio_bg.volume_minus();">减少背景音</a>
<br><br><br><br><br>
<a href="javascript:audio_gift.play();">播放gift</a>
<a href="javascript:audio_gift.pause();">暂停gift</a>
<a href="javascript:audio_gift.stop();">停止gift</a>
<a href="javascript:audio_gift.muted();">静音gift</a>
<a href="javascript:audio_gift.volume_add();">增加gift音</a>
<a href="javascript:audio_gift.volume_minus();">减少gift音</a>
<br><br><br><br><br>
<a href="javascript:audio_bomb.play();">播放bomb</a>
<a href="javascript:audio_bomb.pause();">暂停bomb</a>
<a href="javascript:audio_bomb.stop();">停止bomb</a>
<a href="javascript:audio_bomb.muted();">静音bomb</a>
<a href="javascript:audio_bomb.volume_add();">增加bomb音</a>
<a href="javascript:audio_bomb.volume_minus();">减少bomb音</a>
</body>
</html>

audio 基本功能实现(audio停止播放,audio如何静音,audio音量控制等)的更多相关文章

  1. JavaScript多个音频audio标签,点击其中一个播放时,其他的停止播放

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. audio autoplay 是pause 不会停止播放

    $("#alarmWav").append( $('<audio id="alarmAudio" autoplay loop src="../j ...

  3. 原创: 做一款属于自己风格的音乐播放器 (HTML5的Audio新特性)

    灵感的由来是前些天看到了博: http://www.cnblogs.com/li-cheng 的首页有一个很漂亮的播放器,感觉很不错,是用Flex做的Flash播放器. 于是我也便想到了,自己也来来弄 ...

  4. html5的audio实现高仿微信语音播放效果

    效果图 前台大体呈现效果图如下: 点击就可以播放mp3格式的录音.点击另外一个录音,当前录音停止! 思路 关于播放动画,这个很简单,我们可以用css3的逐帧动画来实现.关于逐帧动画,我之前的文章也写过 ...

  5. JS指定音频audio在某个时间点进行播放,获取当前音频audio的长度,音频时长格式转化

    前言: 今天接到一个需求,需要获取某个.mp3音频文件的时间长度和指定音频audio在某个时间点进行播放(比如说这个视频有4分钟,我要让它默认从第2秒的时候开始播放),这里当然想到了H5中的audio ...

  6. JavaScript一个页面中有多个audio标签,其中一个播放结束后自动播放下一个,audio连续播放

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. HTML5视频播放练习:鼠标经过视频播放,鼠标移除停止播放,再次经过继续播放。

    随着HTML5的广泛应用,在一些网站中,经常看到有些预览的短视频预览,鼠标经过就会播放,移除就会停止播放,再次移进去就会继续播放. 自己也研究着做一个比较简单的类似的练习. 视频可以自己到包图网下载, ...

  8. iOS WKWebView 退出后停止播放音频/视频

    带有<video>或者<audio>标签的H5网页在播放音频视频时,退出webview后不会自动停止播放,手动处理一下. 1.注入使网页停止音频.视频播放的JS代码(Swift ...

  9. swiper中有视频时,滑动停止后视频停止播放

    我们经常能够看到在图片轮播中,穿插着视频的播放,如下图为淘宝的一个产品轮播图,放个视频能够让顾客对产品有个更全面的认识. 我们可以用swiper实现这个功能.用法就跟放图片一样,只是这里把图片换成视频 ...

随机推荐

  1. Go语言实战 - 网站性能优化第一弹“七牛云存储”

    由于用户纷纷反应山坡网的打开速度比较慢,所以两天前我们决定把服务器从linode迁移到阿里云. 整个迁移过程非常平滑,基本上一个小时就完成了.而且阿里云的配套设施提供的也很不错,运行状态监控什么的都有 ...

  2. xamarin IOS 报错处理: an error occurred on client Build420719 while

    xamarin IOS 开发时如果报错如下: an error occurred on client Build420719 while...... 出现如下问题时,可能是1.丢失文件2.没有包括在项 ...

  3. 真实记录疑似Linux病毒导致服务器 带宽跑满的解决过程

    案例描述 由于最近我在重构之前的APP,需要和server端进行数据交互,发现有一个现象,那么就是隔1~2天总会发生获取数据超时的问题,而且必须要重启服务器才能解决.早在之前,我有留意到这个问题,但是 ...

  4. Git 常用命令

    一.初始環境配置 git config --global user.name "John Doe"git config --global user.email johndoe@ex ...

  5. spring boot(五):spring data jpa的使用

    在上篇文章springboot(二):web综合开发中简单介绍了一下spring data jpa的基础性使用,这篇文章将更加全面的介绍spring data jpa 常见用法以及注意事项 使用spr ...

  6. 安装MYSQL详细教程 版本:mysql-installer-community-5.7.16.0 免安装版本和安装版本出现错误的解决

    一.版本的选择 之前安装的Mysql,现在才来总结,好像有点晚,后台换系统了,现在从新装上Mysql,感觉好多坑,我是来踩坑,大家看到坑就别跳了,这样可以省点安装时间,这个折腾了两天,安装了好多个版本 ...

  7. 读书笔记--SQL必知必会05--高级数据过滤

    5.1 组合使用WHERE子句 操作符(operator)也称为逻辑操作符(logical operator),用来联结或改变WHERE子句中的过滤条件. 5.1.1 AND操作符 在WHERE子句中 ...

  8. Cesium教程系列汇总

    Cesium系列目录: 应用篇 入门 Cesium应用篇:1快速搭建 影像 Cesium应用篇:2影像服务(上) Cesium应用篇:2影像服务(下) 控件 Cesium应用篇:3控件(1)Clock ...

  9. 在真机调试 iOS 应用:理解 Certificates, Identifiers & Profiles

    No matching provisioning profiles found. No matching code signing identity found. Your account alrea ...

  10. es6学习笔记一数组(上)

    最近公司没什么事情,我们老大让我看看es6,小颖就练习了下数组的各个方法,今天先给大家分享一部分.嘻嘻,希望对大家有所帮助. every方法: 概述:    every() 方法测试数组的所有元素是否 ...