この関数にマウス クリック イベントを追加しました。
play: function(sound) {
var that = this;
var aid = uniqueid();
var audio = "<audio id='" + aid + "' src='" + globals.wwwroot + "sounds/" + sound + ".mp3' preload='auto'></audio>";
var $container = that.getContainer();
$container.html(audio);
var $audio = $("#" + aid);
if ($audio.length) {
$audio[0].play();
$audio[0].addEventListener("loadedmetadata", function() {
if ($audio[0].duration) {
setTimeout(function() {
$container.remove();
}, $audio[0].duration * 1000);
} // end if
});
} // end if
}, // end method
これで、ページの読み込み時に問題なく動作します。しかし、ちょうど 1 分後、サウンドは再生されなくなります。要素を作成しますが、何も聞こえません。