Фоновая музыка [почему не звучит?]

Добрый вечечер форумяне!

пробовала три метода для подключения фоновой музыки

<bgsound  src="music.mp3"></bgsound>
<embed src="music.mp3" type="audio/mpeg" hidden="true" autostart="true" loop></embed>
<audio  src="music.mp3" autoplay="autoplay">

спасибо)

В чем вопрос? И что за исчезающая картинка? Не хватает контекста чтобы понять о чем ты

Дмитрий не пойму как вписать код он невидим…
или нужно загружать файл?

Тут описано как подсвечивать код: Как формулировать вопрос, подсвечивать код, благодарить. Файл не нужно загружать.

1 лайк

спасибо

<bgsound  src="music.mp3"></bgsound>
<embed src="music.mp3" type="audio/mpeg" hidden="true" autostart="true" loop></embed>
<audio  src="music.mp3" autoplay="autoplay">

Эти вопросы все равно актуальны

Тут не хватает закрывающего тега </audio>.

1 лайк

спасибо! замахалась уже) из-за этого исчезало содержание
но музыка по прежнему не воспроизводится(

А без autoplay аттрибута получается подключить файл? Видны контролы плеера?

Я к тому что может ты подключаешь файл не по тому пути где он лежит

путь простой, в корневом каталоге src=“music.mp3”, а autoplay насколько мне известно отвечает за автозагрузку, но я убрала и безрезультатно

В коде указан относительный путь. Mp3 файл лежит рядом с html файлом в котором подключается, в одной папке?

Код запускается на локальном веб сервере? (Если нет, то абсолютные пути не заработают)

да рядом с html в одной папке и не совсем поняла вопрос с локальным сервером, но я его не устанавливала

Перешли заархивированную папку проекта. Судя по описанию и по коду все должно работать. Не посмотрев все вместе не могу сказать что не так

Дмитрий, как это сделать)?

1 лайк

https://send.firefox.com/download/1c09d59cc6109744/#G5tusjYjzLAoL05uHqjq7g

Ситуация следующая

Музыка не будет по умолчанию проигрываться даже с autoplay аттрибутом. Пользователь должен сам разрешить сайту проигрывать такую музыку. Тут можно почитать на английском нюансы работы (они будут плюс-минус одинаковыми для хрома и других браузеров) https://developers.google.com/web/updates/2017/09/autoplay-policy-changes

Настройки autoplay хранятся в браузере на уровне домена. У меня не получилось изменить настройки для файла открытого с файловой системы. Мне пришлось установить веб сервер, сделать так чтобы страницы подгружались в браузер через веб сервер на домене localhost, и тогда получилось изменить настройки.

Т.е. ты можешь локально дебажить фоновую музыку, но ты не можешь гарантировать чтобы она была у пользователей.

Чтобы дебажить локально тебе нужно иметь установленный nodejs. В терминале (cmd) перейди в папку проекта потом выполни команды

установка сервера

npm install serve -g

запуск сервера в папке

serve .

открой http://localhost:5000

чтобы остановить сервер в терминате нажми ctrl+c

вид терминала с запущенным сервером:

Дальше в браузере кликай на настройки сайта

И разрешай фоновую autoplay музыку

но это не музыка с панелью управления, а фоновая музыка, от того она и фоновая на конкретном сайте (по усмотрению владельца) и пользователь тут ничего не выбирает

В этом и прикол что у пользователя должен быть выбор, а api этого выбора не предполагает. Поэтому браузеры отозвались на просьбы пользователей. Можно еще пообсуждать почему решение производителей браузеров (или API) правильно/неправильно, но факты такие как я описал выше.

1 лайк

согласна, спасибо) ответ сложный, node.js у меня установлен, буду разбираться

Дмитрий, но данное решение относится ко всем трем методам?

Я проверял только <audio src=".." autoplay></audio>