0

我正在尝试创建一个演示应用,其中播放的是YouTube视频列表。我添加了一个功能,可以根据上/下箭头按钮播放下一个/上一个视频。当视频未被点击时,这可以正常工作。但是当点击视频时它会停止工作。youtube视频上的按键事件

var video_list=[{'videoId':'abcd', 'videoId':'efgh']; 
    var index = 0; 
    $(document).on('keyup', function(event){ 
     var keycode = (event.keyCode ? event.keyCode : event.which); 
     if(keycode == '38') { 
     if(index < video_list.length-1){ 
      index += 1; 
     } else { 
     index = 0; 
     } 
     player.loadVideoById({'videoId': video_list[index].videoId}); 
    } 
    if (keycode == '40') { 
     if(index > 0) { 
     index -= 1; 
     } else { 
     index = video_list.length-1; 
     } 

player.loadVideoById({'videoId': video_list[index].videoId}); 
    } 
}); 

任何想法如何使视频聚焦时触发按键事件?

回答

0

使用 document.activeElement 找出哪些要素集中,如果是视频标签(或任何你正在使用)调用运行视频的功能。

+0

我收到警告'KeyboardEvent.keyLocation'已被弃用。请改用'KeyboardEvent.location'。并且它看起来像iframe正在变得焦点 – shanks

+0

您提供的代码不包含有关KeyboardEvent.keyLocation的任何内容,但是我指出它与e.which/e.keyCode相关联,它是什么意思? – Noctisdark

+0

对不起。当尝试打印document.activeelement时,它会返回youtube iframe。 – shanks