3

我希望能够在用户单击链接到第三方网站的 href 时暂停视频,并在焦点返回时重新启动视频。我已经搜索了事件,但找不到一个有效的事件,例如 onunload onchange。我有一个事件处理程序,当一个人停止并向下滚动页面(javascript)时开始一个新视频,但我被困在这个问题上。我尝试了一个调用 javascript 函数的 href,但它变得混乱(href 是动态生成的)。

4

2 回答 2

4
window.addEventListener('focus', function() {
  document.title = 'focused';
});

window.addEventListener('blur', function() {
  document.title = 'not focused';
});

您可以使用此代码获取窗口选项卡的焦点和蓝色事件,并从此处调用您的播放和暂停功能。

于 2013-06-20T06:26:14.807 回答
0

如果第三方链接在同一个选项卡中打开(而不是新选项卡或弹出窗口),您将无法从上次中断的地方继续,直到您保存它。

您可能会使用 html5 Web 存储在客户端上存储当前状态数据。你会想在 window.onbeforeunload 事件上触发它。当他们返回时,只需检查任何存储的数据以恢复播放。这显然不是所有浏览器都支持的。如果保存服务器端是一个选项,您也可以这样做。

来自 w3的网络存储规范 浏览器当前支持的网络存储在这里

但是,如果页面从不卸载,只是失去焦点,您可以在页面的 html 上添加一个侦听器来触发模糊事件的暂停。继续专注。

于 2013-06-20T06:26:30.963 回答