我正在尋找一種方法來觸發嵌入式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演示?