From 740f472ce247958eed5ae7eca0596f1745030f78 Mon Sep 17 00:00:00 2001 From: Hakim El Hattab Date: Tue, 26 Nov 2013 18:22:01 -0500 Subject: when there is data-autoplay:ing media, prolong autoSlide to match its duration #723 --- js/reveal.js | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'js/reveal.js') diff --git a/js/reveal.js b/js/reveal.js index 743c81b..d1d8ea6 100644 --- a/js/reveal.js +++ b/js/reveal.js @@ -2454,6 +2454,17 @@ var Reveal = (function(){ autoSlide = config.autoSlide; } + // If there are media elements with data-autoplay, + // automatically set the autoSlide duration to the + // length of that media + toArray( currentSlide.querySelectorAll( 'video, audio' ) ).forEach( function( el ) { + if( el.hasAttribute( 'data-autoplay' ) ) { + if( autoSlide && el.duration * 1000 > autoSlide ) { + autoSlide = ( el.duration * 1000 ) + 1000; + } + } + } ); + // Cue the next auto-slide if: // - There is an autoSlide value // - Auto-sliding isn't paused by the user -- cgit v1.2.3