h5牛牛源码出售中 audio标签的样式修改

Q1446595067官网:h5.haozibbs.com由于html5的流行,现在移动端大多数的需求都可以使用audio来播放音频,但您可能只是需要很简单的播放/停止效果,但不同的浏览器上的audio样式却不尽人意,那么要怎么改变这个样式呢,其实它的原理比较简单,就是把写audio的时候不要用controls属性,隐藏原生的audio, 然后用div之类标签,定义css样式美化起来用来显示播放器的效果,最后用js捕获audio事件,基本就是src路径、pause暂停、load加载、play播放这些。下面是audio标签的一些相关API:

控制函数功能说明

load():加载音频、视频软件,通常不必调用,除非是动态生成的元素,用来在播放前预加载
play():加载并播放音频、视频文件,除非文件已经暂停在其他位置,否则默认重头开始播放
pause():暂停处于播放状态的音频、视频文件

audio 可脚本控制的特性值:

src:音频文件路径。
autoplay:设置音频是否自动播放 (默认有此属性为自动播放已经加载的的媒体文件),或查询是否已设置为autoplay
autobuffer:设置是否在页面加载时自动缓冲音频,如果设置了autoplay,则忽略此特性
loop:设置音频是否要循环播放。,或查询是否已设置为loop
currentTime:以s为单位返回从开始播放到目前所花的时间,也可设置currentTime的值来跳转到特定位置
controls: 显示或者隐藏用户控制界面(属性供添加播放、暂停和音量控件。 )
volume:在0.0到1.0间设置音量值,或查询当前音量值
muted:设置是否静音

只读属性属性说明

duration:获取媒体文件的播放时长,以s为单位,如果无法获取,则为NaN
paused:如果媒体文件被暂停,则返回true,否则返回false
ended:如果媒体文件播放完毕,则返回true
startTime:返回起始播放时间,一般是0.0,除非是缓冲过的媒体文件,并一部分内容已经不在缓冲区
error:在发生了错误后返回的错误代码
currentSrc:以字符串形式返回正在播放或已加载的文件,对应于浏览器在source元素中选择的文件

1
2
3
4
5
6
7

对于这些属性,主流的浏览器都支持。可是别以为就没有了兼容性,在音频播放流中,有两个阵营。firefox 和 opera 支持 ogg 音频,safari 和 ie 支持 mp3。幸好Google的chrome都支持。

代码如下:

HTML:

<div class="btn-audio"><audio id="mp3Btn"><source src="images/audio.mp3" type="audio/mpeg" /></audio></div>
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/1.10.0/jquery.min.js"></script>

1
2

CSS:

body{
    background:#2b2938;
}
.btn-audio{
    margin: 90px auto;
    width: 186px;
    height: 186px;
    background:url(images/voice_stop.png) no-repeat center bottom;
    background-size:cover;
}

1
2
3
4
5
6
7
8
9
10

JavaScripy:

<script type="text/javascript">
    $(function(){
        //播放完毕
        $(‘#mp3Btn‘).on(‘ended‘, function() {
            console.log("音频已播放完成");
            $(‘.btn-audio‘).css({‘background‘:‘url(images/voice_stop.png) no-repeat center bottom‘,‘background-size‘:‘cover‘});
        })
        //播放器控制
        var audio = document.getElementById(‘mp3Btn‘);
        audio.volume = .3;
        $(‘.btn-audio‘).click(function() {
            event.stopPropagation();//防止冒泡
            if(audio.paused){ //如果当前是暂停状态
                $(‘.btn-audio‘).css({‘background‘:‘url(images/voice_play.png) no-repeat center bottom‘,‘background-size‘:‘cover‘});
                audio.play(); //播放
                return;
            }else{//当前是播放状态
                $(‘.btn-audio‘).css({‘background‘:‘url(images/voice_stop.png) no-repeat center bottom‘,‘background-size‘:‘cover‘});
                audio.pause(); //暂停
            }
        });
    })
</script>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

通过以上方法,audio的样式修改的问题就解决啦,你可以换成你想要的显示效果。

原文地址:http://blog.51cto.com/13598049/2069396

时间: 2024-10-02 21:16:56

h5牛牛源码出售中 audio标签的样式修改的相关文章

微信h5牛牛源码出售 手机牛牛搭建图文教程

微信h5牛牛源码出售QQ:2152876294官网http://diguaym.com/h5手机17070838768神兽青龙白虎朱雀玄武凤凰大厅搭建如下: 1. 布局的时候,如果一个元素你想让他的宽高保持一定比例,而不随屏幕变化,宽高设置的时候,使用同一个单位都是CSS3的单位,低版本不兼容 <span style="font-family: Arial, sans-serif; ">1.移动端页面布局,使用相对的数值,不要使用绝对数值,推荐使用%,vw,vh,rem,e

CoreCLR源码探索(七) JIT的h5牛牛源码出售工作原理(入门篇)

很多C#的初学h5牛牛源码出售Q1446595067官网:h5.haozibbs.com者都会有这么一个疑问, .Net程序代码是如何被机器加载执行的? 最简单的解答是, C#会通过编译器(CodeDom, Roslyn)编译成IL代码, 然后CLR(.Net Framework, .Net Core, Mono)会把这些IL代码编译成目标机器的机器代码并执行. 相信大多数的C#的书籍都是这样一笔带过的. 这篇和下篇文章会深入讲解JIT的具体工作流程, 和前面的GC篇一样, 实现中的很多细节都是

h5牛牛源码开发程序员是出轨率最高的群体?欲加之罪何患无辞

现代人为人处事,会自黑算是必备技能之一h5牛牛源码开发(h5.hxforum.com) 联系方式170618633533企鹅2952777280源码出售 房卡出售 后台出租有意者私聊扣扣.其原因主要有二:一是为了化解尴尬,二是缓解压力,这样集幽默与智慧于一身,大家何乐而不为?但是如今,是什么力量,让一个「从来都是自嘲不息,哪轮得到人家来黑」的程序员群体在光天化日之下就"被黑"了? 为什么程序员就成了出轨率最高的群体了?近日一篇<为什么程序员是出轨率最高的群体>的文章引发诸多

微信h5牛牛源码搭建 问题修复

需要参数 mch_id-商户号,nonce_str-随机字符串,sign-签名,前面两个参数好说,后面的 sign看得我是一脸懵逼,经过 几 次测试最后得到sign的代码是这样的: SortedMap<String, String> datas = new TreeMap<String, String>(); String uuid = UUID.randomUUID().toString().replaceAll("-", ""); dat

Egret 学习笔记 h5牛牛源码 h5牛牛源码搭建教程

1.纹理集实际上就是将一些零碎的小图放到一张大图当中.游戏中也经常使用到纹理集.使用纹理集的好处很多,我们通过将大量的图片拼合为一张图片从而减少网络请求,原先加载数次的图片资源现在加载一次即可.同时,在引擎渲染的时候也会减少IO读取,从而提高h5牛牛源码性能.h5牛牛源码Q 2171793408     http://wowotouba.com/h52.只要发生事件,Flash就会调度事件对象.如果事件目标不在显示列表中,则Flash Player或AIR将事件对象直接调度到事件目标.例如,Fl

H5牛牛源码开发APP技术总结

Q1446595067官网:h5.haozibbs.com或http:\\www.aqbaa.cn在H5页面打开APP的方法一般有两种,在IOS 9以前,一般使用的技术是URL Scheme.这种方式虽然可自定义程度很高,能够巧妙地实现很多跳转,但弊端也很明显:我们只能通过 scheme://example 这种格式的链接来实现跳转,而且现在苹果还对这种方式的跳转加了一个提示框:"是否打开XXX".对于对Web和原生App交互的场景需求量很大的产品来说,这样的跳转方式显然是步骤冗杂的,

新版H5牛牛源码搭建一条龙教程

最低配置:linux服务器,系统: CentOS 6.8,内存2G以上,独享5M以上带宽 QQ:2164097691  材料下载:h5.hubawl.com 源码 <!--{template common/header}--> <!--[name]{lang portalcategory_listtplname}[/name]--> <!--{eval $list = array();}--> <!--{eval $wheresql = category_get_

h5牛牛源码h5二八杠源码出售搭建教程

QQ联系2164097691 材料下载地址:h5.hubawl.com linux服务器,系统: CentOS 6.8,内存2G以上,独享5M以上带宽 <?php /**  *      [Discuz!] (C)2001-2099 Comsenz Inc.  *      This is NOT a freeware, use is subject to license terms  *  *      $Id: memcp.inc.php 29364 2012-04-09 02:51:41Z

h5牛牛源码搭建建站成功第一步——域名的选择

有问题Q1446595067官网:h5.haozibbs.com 一个游戏网站开始于名称和域名,大型公司对这个尤其重视,因为好的名称和相应的域名能够很好的被人记住,才能有好的访问量和多的游戏玩家. 有人说,域名是地皮,网站是楼盘,位置决定成败.在房产市场,好的地皮价格贵,随着进驻的商家越来越多,价格也就水涨船高,域名的售价不断在刷新新的记录,众多的游戏厂商们,不停的往门槛里挤,谁也不愿意输在起跑线上. 域名是棋牌游戏网站建设的第一步,选择域名需要从域名的长度.后缀.含义.优化等各个方面考虑其价值