Prechádzať zdrojové kódy

delay slide jumps a few ms

hakimel 2 rokov pred
rodič
commit
282680e163

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 0 - 0
dist/reveal.esm.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 0 - 0
dist/reveal.esm.js.map


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 0 - 0
dist/reveal.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 0 - 0
dist/reveal.js.map


+ 14 - 1
js/controllers/jumptoslide.js

@@ -45,6 +45,9 @@ export default class JumpToSlide {
 		if( this.isVisible() ) {
 			this.element.remove();
 			this.jumpInput.value = '';
+
+			clearTimeout( this.jumpTimeout );
+			delete this.jumpTimeout;
 		}
 
 	}
@@ -60,6 +63,9 @@ export default class JumpToSlide {
 	 */
 	jump() {
 
+		clearTimeout( this.jumpTimeout );
+		delete this.jumpTimeout;
+
 		const value = this.jumpInput.value.trim( '' );
 		const indices = this.Reveal.location.getIndicesFromHash( value );
 
@@ -74,6 +80,13 @@ export default class JumpToSlide {
 
 	}
 
+	jumpAfter( delay ) {
+
+		clearTimeout( this.jumpTimeout );
+		this.jumpTimeout = setTimeout( () => this.jump(), delay );
+
+	}
+
 	/**
 	 * Reverts back to the slide we were on when jump to slide was
 	 * invoked.
@@ -116,7 +129,7 @@ export default class JumpToSlide {
 
 	onInput( event ) {
 
-		this.jump();
+		this.jumpAfter( 200 );
 
 	}
 

Niektoré súbory nie sú zobrazené, pretože je v týchto rozdielových dátach zmenené mnoho súborov