Browse Source

ensure history api is available, default to hash: true with no history in demo #2286

Hakim El Hattab 5 years ago
parent
commit
b645828707
3 changed files with 13 additions and 11 deletions
  1. 6 5
      README.md
  2. 1 1
      demo.html
  3. 6 5
      js/reveal.js

+ 6 - 5
README.md

@@ -260,12 +260,13 @@ Reveal.initialize({
 	// Display the page number of the current slide
 	slideNumber: false,
 
-	// Push each slide change to the browser history.  Implies `hash: true`
-	history: false,
-
-	// Change the hash when changing slides -- impacts browser history with `history: true`
+	// Add the current slide number to the URL hash so that reloading the
+	// page/copying the URL will return you to the same slide
 	hash: false,
 
+	// Push each slide change to the browser history. Implies `hash: true`
+	history: false,
+
 	// Enable keyboard shortcuts for navigation
 	keyboard: true,
 
@@ -283,7 +284,7 @@ Reveal.initialize({
 
 	// Change the presentation direction to be RTL
 	rtl: false,
-	
+
 	// When this is enabled, stepping left/right from a vertical stack
 	// to an adjacent vertical stack will land you at the same vertical
 	// index instead of the top.

+ 1 - 1
demo.html

@@ -393,8 +393,8 @@ Reveal.addEventListener( 'customevent', function() {
 			Reveal.initialize({
 				controls: true,
 				progress: true,
-				history: true,
 				center: true,
+				hash: true,
 
 				transition: 'slide', // none/fade/slide/convex/concave/zoom
 

+ 6 - 5
js/reveal.js

@@ -76,12 +76,13 @@
 			// Determine which displays to show the slide number on
 			showSlideNumber: 'all',
 
+			// Add the current slide number to the URL hash so that reloading the
+			// page/copying the URL will return you to the same slide
+			hash: false,
+
 			// Push each slide change to the browser history.  Implies `hash: true`
 			history: false,
 
-			// Change the hash when changing slides -- impacts browser history with `history: true`
-			hash: false,
-
 			// Enable keyboard shortcuts for navigation
 			keyboard: true,
 
@@ -4148,10 +4149,10 @@
 			writeURLTimeout = setTimeout( writeURL, delay );
 		}
 		else if( currentSlide ) {
-			if ( config.history ) {
+			if( config.history || !window.history ) {
 				window.location.hash = locationHash();
 			}
-			else if ( config.hash ) {
+			else if( config.hash ) {
 				window.history.replaceState(null, null, '#' + locationHash());
 			}
 		}