Javascript 启动和停止动态音频网格src';什么是基于他们的开始和停止时间?
现在我有一个动态的音频文件列表,我可以随意播放和暂停它们,但每个文件都有一个特定的开始和停止时间,我希望它们只播放到 这只是循环通过我的每个播放按钮,将playAudio功能分配给click事件Javascript 启动和停止动态音频网格src';什么是基于他们的开始和停止时间?,javascript,Javascript,现在我有一个动态的音频文件列表,我可以随意播放和暂停它们,但每个文件都有一个特定的开始和停止时间,我希望它们只播放到 这只是循环通过我的每个播放按钮,将playAudio功能分配给click事件 var playBtns = document.getElementsByClassName("playBtn"); for (var i = 0; i < playBtns.length; i++){ var audio = document.getElementById("audio
var playBtns = document.getElementsByClassName("playBtn");
for (var i = 0; i < playBtns.length; i++){
var audio = document.getElementById("audio" + playBtns[i].id);
playBtns[i].onclick = function(){
playAudio(this.id);
}
}
如果我将stopAudio功能添加到我的playBtn循环中,它只适用于最新的音频文件,任何以前的音频文件只在整个播放过程中播放
for (var i = 0; i < playBtns.length; i++){
var audio = document.getElementById("audio" + playBtns[i].id);
var sounds = document.getElementsByTagName("audio");
var start = convertToSeconds(sounds[i].dataset.start);
var stop = convertToSeconds(sounds[i].dataset.stop);
audio.ontimeupdate = function(){ stopAudio(start, stop) };
playBtns[i].onclick = function(){
playAudio(this.id);
}
}
for(变量i=0;i
如果您能帮助解决这个问题,我们将不胜感激。谢谢你的建议
function stopAudio(startTime, stopTime){
var newTime = convertToSeconds(stopTime);
console.log(audio.currentTime);
if(audio.currentTime >= stopTime){
audio.pause();
audio.currentTime = startTime;
}
}
for (var i = 0; i < playBtns.length; i++){
var audio = document.getElementById("audio" + playBtns[i].id);
var sounds = document.getElementsByTagName("audio");
var start = convertToSeconds(sounds[i].dataset.start);
var stop = convertToSeconds(sounds[i].dataset.stop);
audio.ontimeupdate = function(){ stopAudio(start, stop) };
playBtns[i].onclick = function(){
playAudio(this.id);
}
}