Iframe 从父页面控制embedded.es演示文稿中的显示API

Iframe 从父页面控制embedded.es演示文稿中的显示API,iframe,same-origin-policy,reveal.js,Iframe,Same Origin Policy,Reveal.js,我正在研究一种方法,在一个嵌入式的discover.js-powered slide.es演示中触发幻灯片升级。我有一个通过iframe嵌入本地版本幻灯片的父页面(与测试页面位于同一域中): 我还希望能够控制从外部Slide.es域构建的嵌入式演示文稿,因为这使嵌入变得更加容易。尝试此操作时,我遇到了安全问题,因为父页面和iframed嵌入页面的来源不同: Uncaught SecurityError: Blocked a frame with origin "http://localhost"

我正在研究一种方法,在一个嵌入式的discover.js-powered slide.es演示中触发幻灯片升级。我有一个通过iframe嵌入本地版本幻灯片的父页面(与测试页面位于同一域中):

我还希望能够控制从外部Slide.es域构建的嵌入式演示文稿,因为这使嵌入变得更加容易。尝试此操作时,我遇到了安全问题,因为父页面和iframed嵌入页面的来源不同:

Uncaught SecurityError: Blocked a frame with origin "http://localhost" from accessing a frame with origin "http://slid.es". Protocols, domains, and ports must match.
这显示了当通过单击按钮触发left()或right()时,两个不同的嵌入会发生什么

我看到有人建议解决这个问题,但我只能控制父页面,所以这不是一个真正的选项


有没有一种方法可以通过iframe将Slide.es演示文稿嵌入到他们的外部站点,并且仍然通过他们的Reveal API方法对其进行控制?

关于这一点,我进行了一些讨论,结果发现我实际上是在问不可能的事情。通过iframe从父页面控制另一个域上运行的jsapi,而不访问另一个域,这不是您可以做的,也不应该想做的

我将连接到本地托管的reveal.js幻灯片,而不是Slide.es上托管的幻灯片

document.getElementById("slidesdivlocal").contentWindow.Reveal.left();
Uncaught SecurityError: Blocked a frame with origin "http://localhost" from accessing a frame with origin "http://slid.es". Protocols, domains, and ports must match.