lazy-load iframes only for current slide, unload when hidden

This commit is contained in:
Hakim El Hattab
2015-05-04 20:58:58 -04:00
parent 152271efb2
commit 7dd33f188f
4 changed files with 28 additions and 8 deletions

View File

@ -44,6 +44,7 @@
<li class="fragment">4.2</li>
<li class="fragment">4.3</li>
</ul>
<iframe data-src="http://example.com"></iframe>
</section>
<section>

View File

@ -495,6 +495,15 @@ Reveal.addEventListener( 'ready', function() {
strictEqual( document.querySelectorAll( '.reveal section img[src]' ).length, 1, 'Image source has been set' );
});
test( 'iframe with data-src', function() {
Reveal.slide( 0, 0 );
strictEqual( document.querySelectorAll( '.reveal section iframe[src]' ).length, 0, 'Iframe source is not set' );
Reveal.slide( 2, 0 );
strictEqual( document.querySelectorAll( '.reveal section iframe[src]' ).length, 1, 'Iframe source is set' );
Reveal.slide( 2, 1 );
strictEqual( document.querySelectorAll( '.reveal section iframe[src]' ).length, 0, 'Iframe source is not set' );
});
test( 'background images', function() {
var imageSource1 = Reveal.getSlide( 0 ).getAttribute( 'data-background-image' );
var imageSource2 = Reveal.getSlide( 1, 0 ).getAttribute( 'data-background' );