1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
| /*
|
| simple postmessage plugin
|
| Useful when a reveal slideshow is inside an iframe.
| It allows to call reveal methods from outside.
|
| Example:
| var reveal = window.frames[0];
|
| // Reveal.prev();
| reveal.postMessage(JSON.stringify({method: 'prev', args: []}), '*');
| // Reveal.next();
| reveal.postMessage(JSON.stringify({method: 'next', args: []}), '*');
| // Reveal.slide(2, 2);
| reveal.postMessage(JSON.stringify({method: 'slide', args: [2,2]}), '*');
|
| Add to the slideshow:
|
| dependencies: [
| ...
| { src: 'plugin/postmessage/postmessage.js', async: true, condition: function() { return !!document.body.classList; } }
| ]
|
| */
|
| (function (){
|
| window.addEventListener( "message", function ( event ) {
| var data = JSON.parse( event.data ),
| method = data.method,
| args = data.args;
|
| if( typeof Reveal[method] === 'function' ) {
| Reveal[method].apply( Reveal, data.args );
| }
| }, false);
|
| }());
|
|