Звук воспроизводится каждый раз, когда видео воспроизводится в Chrome - PullRequest
2 голосов
/ 22 ноября 2010

В Chrome (7.0.517.44) я использую тег <video>, и звук будет воспроизводиться только каждый раз видео воспроизводится.

Почему звук не всегда воспроизводится вместе с видео?

На странице:

<div id="VideoShow">
    <video id="VideoPlay" width=800 height=600></video>
</div>

При нажатии запускается этот JS.

function playVideo(videoName) {
    $("#VideoShow").fadeIn(300);
    var Vid = document.getElementsByTagName('video')[0];
    Vid.src = videoName;
    Vid.play();
    Vid.addEventListener('ended', function(e) {
        closeVideo();
    }, false);
}

function closeVideo() {
    var Vid = document.getElementsByTagName('video')[0];
    Vid.removeEventListener('ended', arguments.callee, false);
    Vid.pause();
    $("#VideoShow").fadeOut(300);
}

Ответы [ 2 ]

1 голос
/ 22 ноября 2010

У меня недавно была очень похожая проблема с тегом <audio>. Хотя я не смог определить действительную причину, я смог обойти эту проблему, удалив старый элемент <audio> из DOM и заменив его идентичным элементом непосредственно перед каждым вызовом play ().

0 голосов
/ 22 ноября 2010

Я продолжаю обнаруживать несоответствия с поведением этих элементов.

Вы пытались дождаться запуска метода .play () до тех пор, пока не получите canplay или canplaythrough событие?

Может быть стоит выстрел.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...