From 531d1e8791ea6b19834426bca603a3784ba71708 Mon Sep 17 00:00:00 2001 From: Hakim El Hattab Date: Mon, 16 Apr 2018 09:48:37 +0200 Subject: [PATCH] prevent linked slide numbers from changing color --- css/reveal.css | 3 +++ css/reveal.scss | 4 ++++ js/reveal.js | 59 +++++++++++++++++++++++++------------------------ 3 files changed, 37 insertions(+), 29 deletions(-) diff --git a/css/reveal.css b/css/reveal.css index d79024c..bc96e1e 100644 --- a/css/reveal.css +++ b/css/reveal.css @@ -460,6 +460,9 @@ body { background-color: rgba(0, 0, 0, 0.4); padding: 5px; } +.reveal .slide-number a { + color: currentColor; } + .reveal .slide-number-delimiter { margin: 0 3px; } diff --git a/css/reveal.scss b/css/reveal.scss index 6fb5419..5992250 100644 --- a/css/reveal.scss +++ b/css/reveal.scss @@ -553,6 +553,10 @@ $controlsArrowAngleActive: 36deg; padding: 5px; } +.reveal .slide-number a { + color: currentColor; +} + .reveal .slide-number-delimiter { margin: 0 3px; } diff --git a/js/reveal.js b/js/reveal.js index a953fe2..477a1ea 100644 --- a/js/reveal.js +++ b/js/reveal.js @@ -68,7 +68,7 @@ // Display the page number of the current slide slideNumber: false, - + // Use 1 based indexing for # links to match slide number (default is zero // based) hashOneBasedIndex: false, @@ -1259,7 +1259,7 @@ document.removeEventListener( 'keypress', onDocumentKeyPress, false ); window.removeEventListener( 'hashchange', onWindowHashChange, false ); window.removeEventListener( 'resize', onWindowResize, false ); - + dom.wrapper.removeEventListener( 'pointerdown', onPointerDown, false ); dom.wrapper.removeEventListener( 'pointermove', onPointerMove, false ); dom.wrapper.removeEventListener( 'pointerup', onPointerUp, false ); @@ -2255,41 +2255,41 @@ return overview; } - + /** * Return a hash URL that will resolve to the current slide location. */ - function locationHash() { - - var url = '/'; - // Attempt to create a named link based on the slide's ID + var url = '/'; + + // Attempt to create a named link based on the slide's ID var id = currentSlide ? currentSlide.getAttribute( 'id' ) : null; - if( id ) { - id = encodeURIComponent( id ); - } + if( id ) { + id = encodeURIComponent( id ); + } - var indexf; - if( config.fragmentInURL ) { - indexf = getIndices().f; - } + var indexf; + if( config.fragmentInURL ) { + indexf = getIndices().f; + } - // If the current slide has an ID, use that as a named link, - // but we don't support named links with a fragment index - if( typeof id === 'string' && id.length && indexf === undefined ) { - url = '/' + id; - } - // Otherwise use the /h/v index - else { - if( indexh > 0 || indexv > 0 || indexf !== undefined ) url += indexh + config.hashOneBasedIndex; - if( indexv > 0 || indexf !== undefined ) url += '/' + (indexv + config.hashOneBasedIndex); - if( indexf !== undefined ) url += '/' + indexf; - } + // If the current slide has an ID, use that as a named link, + // but we don't support named links with a fragment index + if( typeof id === 'string' && id.length && indexf === undefined ) { + url = '/' + id; + } + // Otherwise use the /h/v index + else { + if( indexh > 0 || indexv > 0 || indexf !== undefined ) url += indexh + config.hashOneBasedIndex; + if( indexv > 0 || indexf !== undefined ) url += '/' + (indexv + config.hashOneBasedIndex); + if( indexf !== undefined ) url += '/' + indexf; + } + + return url; - return url; } - + /** * Checks if the current or specified slide is vertical * (nested within another slide). @@ -3009,6 +3009,7 @@ * @return {string} HTML string fragment */ function formatSlideNumber( a, delimiter, b ) { + var url = '#' + locationHash(); if( typeof b === 'number' && !isNaN( b ) ) { return '' + @@ -3839,10 +3840,10 @@ } else { // Read the index components of the hash - var h = parseInt( bits[0], 10 ) || 0 - config.hashOneBasedIndex, v = parseInt( bits[1], 10 ) || 0 - config.hashOneBasedIndex, f; + if( config.fragmentInURL ) { f = parseInt( bits[2], 10 ); if( isNaN( f ) ) { @@ -3856,7 +3857,7 @@ } } - + /** * Updates the page URL (hash) to reflect the current * state.