http://jsfiddle.net/kent93/AyEpR/
オーディオがロードされた後、ローダーgifをhide()したい。
loaddata-MediaEventを使用できます。
例:
var files = ['a.mp3','b.mp3'];
$.each(files,function(){
var tmp = new Audio();
tmp.src = this;
tmp.on('loadeddata',function(){
var i = files.indexOf(this);
files.splice(i,1);
if (!files.length){
alert('Preloading done!');
}
});
});
この回答からの引用とコード。
純粋なJSを使用すると、canplaythrough
イベントを使用してそれを行うことができます。
myAudio.addEventListener("oncanplaythrough", function() { ... here hide gif ... }, false);
またはjQueryを使用する:
$('#theMp3File').on('canplay canplaythrough', function(){
$('.loader').hide();
});