Как добавить циклическое воспроизведение звука HTML5?

#html #audio #audioclip

Вопрос:

Мне нужна помощь в циклическом воспроизведении аудиоклипа HTML5.

У меня есть приведенный ниже сценарий, но он воспроизводится только один раз. Мне нужно, чтобы он воспроизводил музыкальный клип, когда ссылка нажата и воспроизводится без остановки в цикле. Звук может быть остановлен только при обновлении страницы или повторном выборе ссылки:

 <a href="#music" onclick="clicksound.playclip()" style="cursor: defau<">Link here</a>

<script>
// Sound for background music
var html5_audiotypes={
"mp3": "audio/mpeg",
"mp4": "audio/mp4",
"ogg": "audio/ogg",
"wav": "audio/wav"
}

function createsoundbite(sound){
var html5audio=document.createElement('audio')
if (html5audio.canPlayType){ //check support for HTML5 audio
for (var i=0; i<arguments.length; i  ){
var sourceel=document.createElement('source')
sourceel.setAttribute('src', arguments[i])
if (arguments[i].match(/.(w )$/i))
sourceel.setAttribute('type', html5_audiotypes[RegExp.$1])
html5audio.appendChild(sourceel)
}
html5audio.load()
html5audio.playclip=function(){
html5audio.pause()
html5audio.currentTime=0
html5audio.play()
}
return html5audio
}
else{
return {playclip:function(){throw new Error("")}}
}
}

//Initialize two sound clips with 1 fallback file each:

var mouseoversound=createsoundbite("music.ogg", "music.mp3")
var clicksound=createsoundbite("music.ogg", "music.mp3")
</script>
 

Спасибо.

Ответ №1:

почему бы вам не попробовать использовать тег audio и не добавить цикл атрибутов, чтобы он повторялся один за другим

замените src своим собственным аудиофайлом, чтобы увидеть, как он зацикливается

 <h1>The audio loop attribute</h1>

<p>Click on the play button to play a sound:</p>

<audio controls loop>
  <source src="https://www.w3schools.com/tags/horse.ogg" type="audio/ogg">
  <source src="https://www.w3schools.com/tags/horse.mp3" type="audio/mpeg">
  Your browser does not support the audio element.
</audio> 

нажмите на эту ссылку, чтобы увидеть, как она работает

Комментарии:

1. Спасибо, я это проверю. Я искал ссылку для воспроизведения на изображении, поэтому, если вы нажмете на изображение, будет воспроизводиться аудиоклип.