在跨域iframe中单击时全屏显示父元素

时间:2018-11-17 02:55:35

标签: javascript iframe html5-fullscreen

我有一个策划视频的网站。这些视频包含在具有跨域URL的iframe中。用户主要与视频互动,该视频加载了第三方承包商设计的一些自定义控件。

鉴于我对该跨域服务器的访问权限受到限制,我添加了一些Javascript代码来侦听全屏按钮上的点击。此时,我的工作是全屏显示 parent 元素,而不是video中的iframe元素。

具体地说,我们的页面看起来像这样:

<div class="iframe-root">
  <video-chat/> <!-- Component with lots of children -->
  <iframe frameborder="0">
</div>

我的目标是对<div class="iframe-root">元素进行全屏显示,以使<video-chat/>组件也以全屏显示。

到目前为止,我已经尝试过听全屏按钮上的点击,并通过window.parentwindow.parent.postMessage({action: "fullscreen"}, '*')发布消息。但是,这种方法无法成功,因为浏览器会通过以下消息阻止父母的全屏请求:
Failed to execute 'requestFullScreen' on 'Element': API can only be initiated by a user gesture

是否可以在跨域iframe中进行的单击中全屏显示父文档中的元素?如果是这样,我该如何实现?

0 个答案:

没有答案