@diana-staputov

Как при включении одного муз.файла выключать другой?

<div class="audio">
   <span>Название аудио</span>
   <audio controls src="/audio/v_lesu_-_rodilas_elochka.mp3" >
      <p>Ваш браузер не поддерживает аудио</p>
   </audio>
</div>
<div class="audio">
   <span>Название аудио</span>
   <audio controls src="/audio/v_lesu_-_rodilas_elochka.mp3" >
      <p>Ваш браузер не поддерживает аудио</p>
   </audio>
</div>
<div class="audio">
   <span>Название аудио</span>
   <audio controls src="/audio/v_lesu_-_rodilas_elochka.mp3" >
      <p>Ваш браузер не поддерживает аудио</p>
   </audio>
</div>
<div class="audio">
   <span>Название аудио</span>
   <audio controls src="/audio/v_lesu_-_rodilas_elochka.mp3" >
      <p>Ваш браузер не поддерживает аудио</p>
   </audio>
</div>
  • Вопрос задан
  • 574 просмотра
Решения вопроса 1
<div class="audio">
   <span>Название аудио</span>
   <audio controls src="http://www.sample-videos.com/audio/mp3/crowd-cheering.mp3" >
      <p>Ваш браузер не поддерживает аудио</p>
   </audio>
</div>
<div class="audio">
   <span>Название аудио</span>
   <audio controls src="http://www.sample-videos.com/audio/mp3/crowd-cheering.mp3" >
      <p>Ваш браузер не поддерживает аудио</p>
   </audio>
</div>
<div class="audio">
   <span>Название аудио</span>
   <audio controls src="http://www.sample-videos.com/audio/mp3/crowd-cheering.mp3" >
      <p>Ваш браузер не поддерживает аудио</p>
   </audio>
</div>
<div class="audio">
   <span>Название аудио</span>
   <audio controls src="http://www.sample-videos.com/audio/mp3/crowd-cheering.mp3" >
      <p>Ваш браузер не поддерживает аудио</p>
   </audio>
</div>


const audioList = document.querySelectorAll('audio')
let currentAudio

Array.prototype.forEach.call(audioList, audio => {
  audio.addEventListener('play', e => {
		if (currentAudio) currentAudio.pause()
		currentAudio = e.target
	})
})


Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
Как-то так:
let last = {};
document.querySelectorAll('audio').forEach(function(el){
  el.addEventListener('playing', function(){
    if (last.pause && last !== this)
      last.pause()
    last = this
  }); 
})

https://jsfiddle.net/2Lyfq508/

P.S.: это на каких-то курсах практическое задание выдают?
Как остановить текущую аудиозапись при включении другой?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы