Odpowiadając na to pytanie…
Nie, nie wystarczy mieć te atrybuty, aby móc automatycznie odtwarzać multimedia z dźwiękiem, musisz mieć zarejestrowany gest użytkownika w swoim dokumencie.
Ale to ograniczenie jest bardzo słabe: jeśli otrzymałeś ten gest użytkownika w dokumencie nadrzędnym, a Twój film został załadowany z elementu iframe, możesz go odtworzyć ...
Weźmy więc na przykład te skrzypce , które są tylko
<video src="myvidwithsound.webm" autoplay=""></video>
Przy pierwszym załadowaniu i jeśli nigdzie nie klikniesz, nie uruchomi się, ponieważ nie mamy jeszcze zarejestrowanego żadnego wydarzenia.
Ale po kliknięciu przycisku „Uruchom” dokument nadrzędny (jsfiddle.net) otrzymał gest użytkownika, a teraz wideo jest odtwarzane, mimo że technicznie jest załadowane w innym dokumencie.
Ale poniższy fragment, ponieważ wymaga rzeczywistego kliknięcia przycisku Uruchom fragment kodu , zostanie automatycznie odtworzony.
<video src="https://upload.wikimedia.org/wikipedia/commons/transcoded/2/22/Volcano_Lava_Sample.webm/Volcano_Lava_Sample.webm.360p.webm" autoplay=""></video>
Oznacza to, że prawdopodobnie Twoja reklama mogła zostać odtworzona, ponieważ wykonałeś gest użytkownika na stronie głównej.
Teraz zwróć uwagę, że Safari i Mobile Chrome mają bardziej rygorystyczne reguły i będą wymagać, abyś faktycznie uruchomił play()
metodę co najmniej raz programowo na elemencie <video>
lub <audio>
z samego programu obsługi zdarzeń użytkownika.
btn.onclick = e => {
// mark our MediaElement as user-approved
vid.play().then(()=>vid.pause());
// now we can do whatever we want at any time with this MediaElement
setTimeout(()=> vid.play(), 3000);
};
<button id="btn">play in 3s</button>
<video
src="https://upload.wikimedia.org/wikipedia/commons/transcoded/2/22/Volcano_Lava_Sample.webm/Volcano_Lava_Sample.webm.360p.webm" id="vid"></video>
A jeśli nie potrzebujesz dźwięku, po prostu nie dołączaj go do multimediów, wideo zawierające tylko ścieżkę wideo może być również odtwarzane automatycznie i zmniejszy wykorzystanie przepustowości przez użytkownika.