HTML5 视频搜索事件处理



我正在尝试跨浏览器同步HTML5视频播放器的控件。目前,我为查找事件设置了一个事件处理程序,以便当一个客户端移动到视频中的不同位置时,新时间将发送到所有其他客户端(这是通过节点和 socket.io 完成的(,并且它们的播放器更新为移动到该时间。问题是,一旦客户端的播放器更新了新时间, onseeked 事件处理程序就会触发并将时间发送给其他客户端,从而导致反馈循环。

有没有办法区分用户手动更改视频时间和脚本中编程更改时间?我希望 onseek 处理程序只触发前者。

解决此问题

的一种简单方法是使用标志并在 socket.io 向您发送新时间时将其设置为编程,并在将其传播回服务器之前检查该标志是否已设置。

此外,您需要在使用一段时间后再次将标志设置为 false SetTimeout()以便手动更改将传播,因为它们应该传播。

最新更新