存在div时如何防止视频在后台播放?

时间:2019-06-04 15:13:20

标签: javascript html5-video

我正在制作一个自行车模拟器,用户可以在设备上踩踏板,然后踩踏板进行视频播放。我想添加一个暂停屏幕,以便在屏幕启动时暂停视频。

现在,我有一个暂停屏幕,当它进入div时,视频会暂停,但是如果用户在暂停屏幕打开后继续踩踏板,则视频将再次在后台播放。

这就是我用来显示暂停屏幕和暂停视频的方法。用户按下按钮时将调用该函数。

function togglePause() {
    var paused = document.getElementById("pauseScreen");
    if (paused.style.display == "none") {
        paused.style.display = "block";
    } else {
        paused.style.display = "none";
    }

    var vid = document.getElementById("video");
    vid.pause();
}

踏板设备的工作方式类似于蓝牙键盘,它在每次踏板旋转时都会发送按键事件。

 $(document).keypress(function (event) {
        console.log(String.fromCharCode(event.which));

        if ('p'.indexOf(String.fromCharCode(event.which)) !== -1) {
            video.play();

我想做到,只要显示div,就无法播放视频。谢谢!

1 个答案:

答案 0 :(得分:0)

而不是直接在内部开始播放视频

if ('p'.indexOf(String.fromCharCode(event.which)) !== -1)

您可以首先检查div的.display属性是否设置为阻止,以防不播放视频。

if ('p'.indexOf(String.fromCharCode(event.which)) !== -1) {
  if (document.getElementById("pauseScreen").style.display != "block") {
    video.play();
  }
}