воспроизведение звука () не работает при загрузке страницы, когда вкладка находится в фоновом режиме - PullRequest
0 голосов
/ 13 сентября 2018

вот проблема, с которой я сейчас сталкиваюсь:

Предположим, что я на главной странице моего сайта.Я использую правую кнопку мыши и выбираю «Открыть ссылку на новую вкладку» , не переключаясь на эту вкладку.Я хочу, чтобы звук воспроизводился без необходимости выводить эту вкладку на передний план.

Есть ли способ сделать это?В настоящее время звук воспроизводится только тогда, когда вкладка выходит на передний план. Я использую Chrome 69 и Ubuntu 16.04 LTS.

Я видел похожие вопросы на форуме (например, question1 и question2 ), но не смог найти ответ для своего случая.

Пример кода можно увидеть ниже:

<script>
    $(function () {
        $('body').append(
            '<audio id="test_audio">' +
                '<source src="/sounds/bip.wav" type="audio/wav" >' +
            '</audio>'
        );

        function play_test_sound() {
            var testAudio = document.getElementById('test_audio');
            var testPlayPromise = testAudio.play();
            var testPlayButtonMessage = document.querySelector('#test_audio_message');
            var testPlayButton = document.querySelector('#test_play');

            if (testPlayPromise !== undefined) {
                testPlayPromise.then(function() {
                     testPlayButtonMessage.hidden = true;
                }).catch(function(error) {
                    testPlayButton.addEventListener('click', function(){
                       play_test_sound();
                    });
                    testPlayButtonMessage.hidden = false;
                });
            }
        }

        play_test_sound();
    }
</script>

<div class="m-a-md row" id="test_audio_message" hidden>
    <div class="col-md-8">Click <a id="test_play">here</a> to enable sound.</div>
</div>
...