我正在使用“香草”JavaScript :)我试图复制YouTube空间栏按下时暂停视频的方法。如果事件绑定到窗口而不是视频,我可以让视频暂停,这里是我的代码。如果使用空格键与youtube互动,暂停HTML5视频?
window.addEventListener("keyup", function(evt) {
if (evt.keyCode === 32) {
if (video.paused) {
video.play();
}
else {
video.pause();
}
}
});
如上面的代码,使用窗口工作,但如果我改变窗口到视频它不工作了,即使我已经与视频播放器互动。必要性理由:如果用户正在观看视频并想发表评论,每次按下空格键,视频就会开始播放,并一次又一次地停顿。所以我需要它只是暂停或开始,如果用户已与视频播放器交互,而不是在其他任何地方点击,如youtube。非常感谢。
编辑:注意到YouTube使用Tabindex(以前从未使用过),使控件可以聚焦,所以这与它有关?这只是控制,而不是实际的屏幕。
你可以设置一个标志,如果焦点在评论框,禁止播放/暂停切换,但是当焦点在它的工作原理是必要的窗口别处? – Offbeatmammal 2015-02-23 06:05:30
是的,这是可能的,但对于这种情况下的问题是,用户将无法使用空格键向下滚动,这只会在用户输入某种输入时受益。 – Darius 2015-02-23 06:07:31