Если <video>играет, остановите <audio> - PullRequest
4 голосов
/ 27 мая 2011

На веб-странице я использую пару аудио-тегов для звуков при наведении курсора мыши и видео-тег для воспроизведения видео.

Теперь, когда воспроизводится видео, звук должен быть остановлен и отключен. Звук запускается так:

$(this).mouseover(function() {
    $('audio#' + $(this).attr('title') + '_sound').trigger('play');
});

Теперь должно быть добавлено что-то вроде этого, я попробовал пару вещей, которые ни одна из них не работает:

$(this).mouseover(function() {
    if($('#video') is NOT playing) {
        $('audio#' + $(this).attr('title') + '_sound').trigger('play');
    }
});

Кто-нибудь делал что-то подобное раньше?

Любая помощь приветствуется: -)

Спасибо!

Ответы [ 3 ]

3 голосов
/ 27 мая 2011

HTML5 имеет атрибут приостановки.

var v = document.getElementsByTagName("video")[0];

$(this).mouseover(function() {
    if(v.paused){  // checks to see if video is paused
       $('audio#' + $(this).attr('title') + '_sound').trigger('play');
    }
});
3 голосов
/ 27 мая 2011

Вы должны зарегистрировать прослушиватель событий, который будет вызываться всякий раз, когда был подтвержден сигнал паузы видеотега.

var v = document.getElementsByTagName("video")[0];
v.addEventListener("pause", function() { audio.trigger("play"); }, true);
0 голосов
/ 14 июня 2015
var video = document.getElementById("myVideo");
var music = document.getElementById("myMusic");
var noOverlap = setInterval(
if(myVideo.paused == false){
    myMusic.pause();
}
, 1000);

Это позволит проверить, не перекрываются ли эти две значения каждую секунду, и по умолчанию воспроизвести видео и поставить музыку на паузу.

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