我正在寻找一种方法来触发嵌入式reveal.js-powered sliding.es演示文稿中的幻灯片进度。我有一个父页面,通过iframe嵌入幻灯片的本地版本(在同一个域测试页):控制从父页面嵌入sliding.es演示文稿中的API
<iframe id="slidesdivlocal" src="slides-embed.html" width="576" height="420" scrolling="no" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
在这种设置中,我可以用的东西成功地控制了iframe中的显示API像:
document.getElementById("slidesdivlocal").contentWindow.Reveal.left();
我想能够同时控制从外部slid.es域的iframe,因为这使得嵌入容易得多嵌入式演示。当我尝试这一点,我碰到一个安全问题,因为父页面和IFrame的嵌入式页面不具有相同的起源:
Uncaught SecurityError: Blocked a frame with origin "http://localhost" from accessing a frame with origin "http://slid.es". Protocols, domains, and ports must match.
This is an example显示左触发时会发生什么情况,以两种不同的嵌入视频()或右( )通过按钮点击。
我看到有人建议Cross-window messaging解决这个问题,但我只能控制父页面,所以这不是一个真正的选择。
有没有一种方法可以通过iframe嵌入到他们的外部网站,并仍然通过他们的Reveal API方法控制他们滑动.es演示?