diff --git a/js/reveal.js b/js/reveal.js index d3ba03cb..3747e151 100644 --- a/js/reveal.js +++ b/js/reveal.js @@ -3563,10 +3563,11 @@ var element; // Ensure the named link is a valid HTML ID attribute - if( /^[a-zA-Z][\w:.-]*$/.test( name ) ) { - // Find the slide with the specified ID - element = document.getElementById( name ); - } + try { + element = document.getElementById( decodeURIComponent( name ) ); + } + catch (e) { + } if( element ) { // Find the position of the named slide and navigate to it @@ -3614,7 +3615,7 @@ // Attempt to create a named link based on the slide's ID var id = currentSlide.getAttribute( 'id' ); if( id ) { - id = id.replace( /[^a-zA-Z0-9\-\_\:\.]/g, '' ); + id = encodeURIComponent( id ); } // If the current slide has an ID, use that as a named link