Цитата:
Цитата:
Цитата:
Например, автозапуск в браузере Google Chrome со звуком разрешен, если:
Добавил обработку исключения... Цитата:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0"> <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> <style> .audio-muting-button { position: fixed; top: 1em; left: 1em; background: white; border: 1px solid #f1f1f1; border-radius: 0.5em; box-shadow: 0 0.5em 1em rgba(0, 0, 0, 0.1); font: 1em -apple-system, system-ui, sans-serif; text-transform: uppercase; display: flex; align-items: center; padding: 0.5em; overflow: hidden; outline: none; } .audio-muting-button::before { content: "volume_off"; font: 2em Material Icons; text-transform: none; margin-right: 0.25em; } .audio-muting-button.muted::before { content: "volume_up"; } .audio-muting-button::after { content: ""; position: absolute; background: #EEEEEE; width: 50px; height: 50px; top: 50%; left: 50%; margin: -25px; border-radius: 50%; transition: 300ms linear; transform: scale(0); z-index: -1; } .audio-muting-button:focus::after { transform: scale(5); } </style> <script> document.addEventListener("DOMContentLoaded", function() { var audio = new Audio("https://cdn.glitch.com/2e4efa25-4991-43a3-9729-bd42c161c6ce%2Faudio.mp3?v=1"); audio.currentTime = "audioLastTime" in localStorage ? localStorage.audioLastTime : 0; audio.loop = true; audio.play().catch(function() { audio.muted = true; renderMutingLabel(); }); var button = document.createElement("button"); button.className = "audio-muting-button"; renderMutingLabel(); button.addEventListener("click", function() { audio.muted ^= true; renderMutingLabel(); audio.play(); }); function renderMutingLabel() { button.textContent = audio.muted ? "Tap to unmute" : "Tap to mute"; button.classList.toggle("muted", audio.muted); } document.body.appendChild(button); addEventListener("beforeunload", function(event) { localStorage.audioLastTime = audio.currentTime % audio.duration; }); }); </script> </head> <body></body> </html> Интересно, что после того как я нажал эту кнопку (у себя по адресу localhost:5000) пару десятков раз, браузер разрешил автозапуск (очевидно же, что на основе значения индекса заинтересованности пользователя) UPD Интересно, что на форуме уже со второго раза разрешает автозапуск! (По крайней мере у меня!) |
Malleys,
спасибо за код, добавил в сундучок. Цитата:
|
Часовой пояс GMT +3, время: 03:14. |