@mcnamee

Как сделать чтобы при открытии html документа была музыка?

Как сделать чтобы при открытии и обновлении html документа воспроизводилась музыка?
не надо писать про потому что при обновлении музыка больше не воспроизводится
  • Вопрос задан
  • 203 просмотра
Пригласить эксперта
Ответы на вопрос 3
Le_Traceur_Snork
@Le_Traceur_Snork
PHP-программист | Wordpress
Тег <audio></audio>
htmlbook.ru/html/audio
Ответ написан
Комментировать
Nolis
@Nolis
it-гопник
Давно чистый JS не писал, могу ошибаться, но в целом вот:

const audio = document.createElement("audio");
const source = document.createElement("source");

audio.appendChild(source);
audio.setAttribute('autoplay', 'autoplay');
source.setAttribute('src', 'https://interactive-examples.mdn.mozilla.net/media/cc0-audio/t-rex-roar.mp3');

document.body.appendChild(audio)

window.addEventListener("load",function(){
    localStorage.setItem("audioCurrentTime", audio.currentTime);
    audio.currentTime = localStorage.getItem("audioCurrentTime");
});

Генерируем на странице всегда audio > source, подставляем нужные аттрибуты, так же храним время и перезаписываем/записываем его в локалстор перед и после перезагрузки. Таким образом можно скрипт подключить ко всем страницам и задать ему нужный трек, ну или тянуть его откуда-то.

Нет возможности нормально проверить код, а с новыми спецификациями браузеры просто запрещают autoplay.
По обходам можете предлагать ниже, тут я бессилен)

Обход спецификации для тестирования:

You can disable the autoplay policy entirely by using a command line flag: chrome.exe --autoplay-policy=no-user-gesture-required. This allows you to test your website as if user were strongly engaged with your site and playback autoplay would be always allowed.


Почему музыка не играет сама: Autoplay policy in Chrome
Ответ написан
Комментировать
SHKD
@SHKD
Придется по-любому ставить на событие, клик мышкой или тач. Воспроизведение на автомате противоречит политике пд.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
SummerWeb Ярославль
от 120 000 до 180 000 ₽
КРАФТТЕК Санкт-Петербург
от 60 000 до 80 000 ₽
Brightdata Тель-Авив
от 5 500 до 6 500 $
19 июн. 2024, в 11:20
4800 руб./за проект
19 июн. 2024, в 11:09
3000 руб./за проект
19 июн. 2024, в 10:58
7000 руб./за проект