为你的html5网页添加音效示例
来源: 阅读:1679 次 日期:2016-07-11 10:12:52
温馨提示: 小编为您整理了“为你的html5网页添加音效示例”,方便广大网友查阅!

这篇文章主要介绍了为你的html5网页添加音效示例,需要的朋友可以参考下

为交互添加恰当的音效,常常能改善用户体验。在我们所熟悉的windows里,清空回收站的碎纸声就是很好的例子。

下面是一个利用HTML5, Jquery,给页面添加音效的小组件(只是添加音效,并不是播放器)。

其实很简单,就是利用HTML5中的audio标签,播放声音。不过为了照顾IE 6-8,还是用上了bgsound。

兼容所有主流浏览器(非主流不在考虑之列了)

闲话少说,上代码:

代码如下:

<a href="#" class="fui-btn">播放</a>

<script>

/*Play sound component*/

/*

* profile: JSON, {src:'chimes.wav',altSrc:'',loop:false}

*

* setSrc: Function, set the source of sound

* play: Function, play sound

*/

if (!FUI){

var FUI = {};

}

FUI.soundComponent=function(profile){

this.profile={

src:'',          //音频文件地址

altSrc:'',         //备选音频文件地址 (不同浏览器支持的音频格式不同,可见附表)

loop:false        //是否循环播放,这个参数现在没有用上

};

if(profile) {

$.extend(this.profile,profile);

}

this.soundObj=null;

this.isIE = !-[1,];

/*这个方法是前辈大牛发明的,利用ie跟非ie中JScript处理数组最后一个逗号“,”的差异,

不过对于IE 9,这个办法就无效了,但此处正合我用,因为IE 9支持audio*/

this.init();

};

FUI.soundComponent.prototype={

init:function(){

this._setSrc();

},

_setSrc:function(){

if(this.soundObj){

if(this.isIE){

this.soundObj[0].src=this.profile.src;

}else{

this.soundObj[0].innerHTML='<source src="'+this.profile.src+'" />

<source src="'+this.profile.altSrc+'" />';

}

}else{

if(this.isIE){

this.soundObj=$

('<bgsound volume="-10000" loop="1" src="'+this.profile.src+'">').appendTo('body');

//-10000是音量的最小值。先把音量关到最小,免得一加载就叮的一声,吓到人。

}else{

this.soundObj=$('<audio preload="auto" autobuffer>

<source src="'+this.profile.src+'" />

<source src="'+this.profile.altSrc+'" />

</audio>').appendTo('body');

}

}

},

setSrc:function(src,altSrc){

this.profile.src=src;

if(typeof altSrc!='undefined'){

this.profile.altSrc=altSrc;

}

this._setSrc();

},

play:function(){

if(this.soundObj){

if(this.isIE){

this.soundObj[0].volume = 1;  //把音量打开。

this.soundObj[0].src = this.profile.src;

}else{

this.soundObj[0].play();

}

}

}

};

var sd=new FUI.soundComponent({src:'ding.wav',altSrc:'ding.mp3'});

$('.fui-btn').bind('click',function(e){

sd.play();

});

</script>

更多信息请查看网页制作
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map