diff options
author | Benjamin Chrétien <chretien@lirmm.fr> | 2015-03-08 18:11:01 +0100 |
---|---|---|
committer | Benjamin Chrétien <chretien@lirmm.fr> | 2015-03-08 18:15:16 +0100 |
commit | 25c46ccc37f932c04d5c2af7de1d12c6cdaed055 (patch) | |
tree | ea74f2de5fb275f1a672354a5f182ee1deb63f2c | |
parent | 46777415681e6e3622046d175491c4af7b65e363 (diff) | |
download | fosdem-2018-presentation-25c46ccc37f932c04d5c2af7de1d12c6cdaed055.tar fosdem-2018-presentation-25c46ccc37f932c04d5c2af7de1d12c6cdaed055.tar.gz |
Fix slide numbering for custom slide number formatting.
Numbering was off when dealing with fragments.
-rw-r--r-- | js/reveal.js | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/js/reveal.js b/js/reveal.js index 3edd301..58edc56 100644 --- a/js/reveal.js +++ b/js/reveal.js @@ -2476,11 +2476,12 @@ } var totalSlides = getTotalSlides(); + var currentSlide = getSlidePastCount() + 1; dom.slideNumber.innerHTML = format.replace( /h/g, indexh ) .replace( /v/g, indexv ) - .replace( /c/g, Math.round( getProgress() * totalSlides ) + 1 ) - .replace( /t/g, totalSlides + 1 ); + .replace( /c/g, currentSlide ) + .replace( /t/g, totalSlides ); } } @@ -2966,15 +2967,14 @@ } /** - * Returns a value ranging from 0-1 that represents - * how far into the presentation we have navigated. + * Returns the number of past slides. This can be used as a global + * flattened index for slides. */ - function getProgress() { + function getSlidePastCount() { var horizontalSlides = toArray( dom.wrapper.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR ) ); - // The number of past and total slides - var totalCount = getTotalSlides(); + // The number of past slides var pastCount = 0; // Step through all slides and count the past ones @@ -3006,6 +3006,20 @@ } + return pastCount; + + } + + /** + * Returns a value ranging from 0-1 that represents + * how far into the presentation we have navigated. + */ + function getProgress() { + + // The number of past and total slides + var totalCount = getTotalSlides(); + var pastCount = getSlidePastCount(); + if( currentSlide ) { var allFragments = currentSlide.querySelectorAll( '.fragment' ); |