IE9 HTML5 视频“播放”事件在第二次播放时未触发

IE9 HTML5 video "play" event not fired on second play

本文关键字:播放 第二次 事件 HTML5 视频 IE9      更新时间:2023-09-26

我构建了简单的HTML5视频播放器。我在IE9中未触发"播放"事件时遇到问题。看看小提琴。

播放器有一个大的播放按钮,播放前可见,播放时隐藏,视频完成时可见。

以下是我正在使用的三个侦听器。

btn.addEventListener("click", function() {
    vid.play();
});
vid.addEventListener("play", function() {
    btn.style.display = "none";
    alert("'play' event fired");
});
vid.addEventListener("ended", function() {
    btn.style.display = "block";
});

IE9 中,"播放"事件不会在第二次和后续播放视频时触发。

我猜要么是我不了解"播放"HTML5视频事件,要么是IE9中的某种错误。

任何帮助将不胜感激。

假设:: 我认为即使您的视频结束时,暂停事件仍然存在false,因此可以在视频结束后尝试明确设置pause,例如:

btn.addEventListener("click", function() {
    vid.play();
});
vid.addEventListener("play", function() {
    btn.style.display = "none";
    alert("'play' event fired");
});
vid.addEventListener("ended", function() {
    if( !this.paused ) this.pause();
    btn.style.display = "block";
});