使用Javascript和/或HTML5预加载声音
Preload a sound using Javascript and/or HTML5
我正在创建一个Joomla!组件,我想在鼠标点击时播放特定的声音。
我有以下代码:
var context = new AudioContext();
var sound;
var playSound = context.createBufferSource();
var getSound = new XMLHttpRequest();
getSound.open("GET", "clapping.wav", true);
getSound.responseType = "arraybuffer";
getSound.onload = function() {
context.decodeAudioData(getSound.response, function(buffer){
sound = buffer;
});
}
getSound.send();
getSound.send();
setTimeout(function(){
playSound.buffer = electro;
playSound.connect(context.destination);
},3500);
jQuery("#bgchanger").click(function() {
playSound.start(0);
}
这工作得很好,但我面临的问题是,声音播放几秒钟后,当我点击按钮,而不是立即,所以我想要它直接播放
感觉有点傻,我刚刚注意到为什么会发生这种情况…他们几分钟前发给我的文件,我才注意到它有一个2.5秒的静音在开始…我可以在Chrome上的调试屏幕上看到,当我加载页面时,文件在52ms后下载。
相关文章:
- 如何使用url加载程序在webpack中导入多个图像
- 如何在生成下载文件时显示加载动画
- HTML/JS github页面项目没有't在使用firefox运行时加载图像或声音
- 在显示页面之前使用 jquery ajax 加载图像和声音
- 预加载声音文件
- 动态加载midi.js声音字体
- 如何以块的形式播放加载的声音
- 在开始动画之前预加载所有声音和图像
- 声音管理器 2 SWF 加载问题
- 当我在 Javascript 中加载相同的声音 n 次时,浏览器会只是从服务器获取声音,然后将其复制到 n 个不同的对象
- SoundJS如何/可以加载其他预加载程序加载的声音文件(如Pixi.Loader.Loader())
- PhoneGap LimeJS声音未加载
- 使用Javascript和/或HTML5预加载声音
- Internet explorer中的预加载声音createjs-preloadjs不起作用
- 使用soundmanager v2预加载声音
- 执行函数时,只加载图像/声音,Jquery
- HTML//jQuery-重新加载后静音所有音频声音10秒
- soundManager2:无法从Url数组预加载我的所有声音
- 在加载 HTML 页面时阻止声音
- 加载声音文件暂停,然后在几秒钟后开始播放