Атрибут autoplay не работает
Здравствуйте не работает атрибут autoplay. В интернете нашел решение запихнуть его в видео, но 1 оно даже так не работает и 2 люди говорят что это неправильно. Подскажите пожалуйста что делать?
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<audio autoplay>
<source src="audio/intro.mp3" type="audio/mpeg">
</audio>
</body>
</html>
Ответы (1 шт):
Несмотря на то, что у <audio> и <video> есть атрибут autoplay, который запустит воспроизведение автоматически, во многих браузерах это работать не будет, т.к. многих людей это бесит.
Представьте ситуацию, вы сидите ночью на колонках, заходите на какой-то сайт и что-то где-то начинает орать (если б многие писали изначально .volume = .25, может быть удалось бы избежать отключение браузерами автовоспроизведения), а вы в это время пытаетесь найти как это выключить или же вовсе закрываете вкладку\браузер.
Мало приятного, согласитесь, по этому некоторые браузеры ограничили этот атрибут.
Например <video autoplay> будет работать только при наличии атрибута muted.
А как быть с <audio>?
Одно из решений, которое в целом не запрещено, это воспроизвести аудио, как только пользователь кликнул где-то на странице.
const audio = document.querySelector('#audio');
audio.pause();
audio.volume = .25;
document.addEventListener('click', AudioPlay);
function AudioPlay() {
audio.play();
document.removeEventListener('click', AudioPlay);
}
<p>Кликните по странице, чтобы воспроизвести</p>
<audio id="audio" src="//minov.pw/_remove/ruso/audio.mp3" preload="auto" autoplay controls></audio>
