Ext:在Ext中播放声音(mp3等)

来源:百度文库 编辑:神马文学网 时间:2024/07/01 13:55:41

Ext:在Ext中播放声音(mp3等)

作者:佚名  来源:本站原创  发布时间:2010年05月09日 减小字体 增大字体有时候我们可能会有这样的需求,给用户一些声响提示,以增强用户的体验或者给用户更加明显的提示

比如说刚打开系统的时候,播放一段声音;有新信息的时候,发出短提示等

但这时出现问题了,因为我们要拿出一个兼容的的方案(主要是浏览器兼容),虽

然DHTML5已经有了audio标签,但毕竟应用不广泛。

有人说使用,但相信大家都有这样的感觉,当我们打开页面的时候,浏览

器总是提示要下载插件,有时候还下载不了

这时就不得不提flash了,几乎所有的浏览器都装有flash播放器,如果能利用flash提

供的接口编写一个播放器,那兼容方面就解决了

最后决定采用的是
soundManager2 (js)声音播放组件,因为Ext官方并没有提供类

似组件

经过研究,终于能用到Ext中了,这个就是在程序中用到的,
点击这里下载

方法如下:

下载下来以后

如果你下载的是官方原版的(可以直接使用我上面提供的那个)

找到soundManager2.js
 


把最后一句注释掉

//soundManager = new SoundManager();

然后在Ext.onReady中,加入

   //初始化声音类soundManager 
    soundManager = new SoundManager();
    //soundManager.waitForWindowLoad = true;
   //是否打开调试模式,打开话对viewport有一定影响
    soundManager.debugMode = false;
//这个是soundManager提供的swf文件所在的文件夹
    soundManager.url = 'jslib/sound/swf';
    soundManager.beginDelayedInit();
    soundManager.onload = function() {
        //这里面放入你要播放的声音
        //系统声音
        soundManager.createSound({
            id: 'systemSound',
            url: 'jslib/sound/mp3/system.mp3',
            //autoLoad: true,//自动加载
            //multiShot: false,//true 在同一时刻只能有一个频段的声音
            autoPlay: true //自动播放 这个是系统的背景音
            //volume: 100
        });
        //信息音
        soundManager.createSound({
            id: 'msgSound',
            url: 'jslib/sound/mp3/msg.mp3'
            //volume: 100
        });
        //加入音
        soundManager.createSound({
            id: 'joinSound',
            url: 'jslib/sound/mp3/join.mp3'
            //volume: 100
        });
    }


然后在程序中需要播放声音的地方,加上

soundManager.play('joinSound');

soundManager.play('msgSound');


不要忘了在页面中引用js文件



在部署的时候使用的是压缩版