如何使用JS/jQuery在HTML5中使用
问题描述:
为了克服Google TTS API的100个字符的字符限制,试图循环每100个字符以从api获取新鲜的mp3并无缝播放。尝试了多种方式,但.play()和像playplay/onended这样的事件监听器似乎不仅仅适用于循环! 可以实现的最好方式是让所有下载的曲目同时播放,而不是一个接一个地播放。以下是一些代码: -如何使用JS/jQuery在HTML5中使用<audio>标记来播放其他曲目?
if ($("#theinput").attr("value").length > 100){
var len = $("#theinput").attr("value").length;
alert(len);
var audioPlayer = document.getElementById("spokenmemory");
for (var i=0; i < (len/100); i++) {
var stl=i*100;
var str = $("#theinput").attr("value").substr(stl, 100);
$("#spokenmemory").attr("src", "http://translate.google.com/translate_tts? tl=en&q="+str);
alert(str);
audioPlayer.load();
audioPlayer.addEventListener('canplay', function() {
alert('Loaded');
audioPlayer.play();
});
//audioPlayer.play();
}
任何帮助将不胜感激。
答
尝试使用触发功能,而不是
fadeInAudio : function(audio){
// audio.play();
audio.trigger("play");
},
fadeOutAudio : function(audio){
// audio.pause();
audio.trigger("pause");
},