clean up trailing whitespace (closes #197)
This commit is contained in:
		
							
								
								
									
										224
									
								
								js/reveal.js
									
									
									
									
									
								
							
							
						
						
									
										224
									
								
								js/reveal.js
									
									
									
									
									
								
							| @@ -2,17 +2,17 @@ | ||||
|  * reveal.js 2.1 r35 | ||||
|  * http://lab.hakim.se/reveal-js | ||||
|  * MIT licensed | ||||
|  *  | ||||
|  * | ||||
|  * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se | ||||
|  */ | ||||
| var Reveal = (function(){ | ||||
|  | ||||
| 	'use strict'; | ||||
| 	 | ||||
|  | ||||
| 	var HORIZONTAL_SLIDES_SELECTOR = '.reveal .slides>section', | ||||
| 		VERTICAL_SLIDES_SELECTOR = '.reveal .slides>section.present>section', | ||||
|  | ||||
| 		// Configurations defaults, can be overridden at initialization time  | ||||
| 		// Configurations defaults, can be overridden at initialization time | ||||
| 		config = { | ||||
| 			// Display controls in the bottom right corner | ||||
| 			controls: true, | ||||
| @@ -32,7 +32,7 @@ var Reveal = (function(){ | ||||
| 			// Loop the presentation | ||||
| 			loop: false, | ||||
|  | ||||
| 			// Number of milliseconds between automatically proceeding to the  | ||||
| 			// Number of milliseconds between automatically proceeding to the | ||||
| 			// next slide, disabled when set to 0, this value can be overwritten | ||||
| 			// by using a data-autoslide attribute on your slides | ||||
| 			autoSlide: 0, | ||||
| @@ -44,7 +44,7 @@ var Reveal = (function(){ | ||||
| 			rollingLinks: true, | ||||
|  | ||||
| 			// Transition style (see /css/theme) | ||||
| 			theme: null,  | ||||
| 			theme: null, | ||||
|  | ||||
| 			// Transition style | ||||
| 			transition: 'default', // default/cube/page/concave/zoom/linear/none | ||||
| @@ -65,8 +65,8 @@ var Reveal = (function(){ | ||||
| 		previousSlide, | ||||
| 		currentSlide, | ||||
|  | ||||
| 		// Slides may hold a data-state attribute which we pick up and apply  | ||||
| 		// as a class to the body. This list contains the combined state of  | ||||
| 		// Slides may hold a data-state attribute which we pick up and apply | ||||
| 		// as a class to the body. This list contains the combined state of | ||||
| 		// all current slides. | ||||
| 		state = [], | ||||
|  | ||||
| @@ -79,13 +79,13 @@ var Reveal = (function(){ | ||||
| 								'msPerspective' in document.body.style || | ||||
| 								'OPerspective' in document.body.style || | ||||
| 								'perspective' in document.body.style, | ||||
| 		 | ||||
|  | ||||
| 		supports2DTransforms =  'WebkitTransform' in document.body.style || | ||||
| 								'MozTransform' in document.body.style || | ||||
| 								'msTransform' in document.body.style || | ||||
| 								'OTransform' in document.body.style || | ||||
| 								'transform' in document.body.style, | ||||
| 		 | ||||
|  | ||||
| 		// Throttles mouse wheel navigation | ||||
| 		mouseWheelTimeout = 0, | ||||
|  | ||||
| @@ -104,7 +104,7 @@ var Reveal = (function(){ | ||||
| 			handled: false, | ||||
| 			threshold: 80 | ||||
| 		}; | ||||
| 	 | ||||
|  | ||||
| 	/** | ||||
| 	 * Starts up the presentation if the client is capable. | ||||
| 	 */ | ||||
| @@ -112,7 +112,7 @@ var Reveal = (function(){ | ||||
| 		if( ( !supports2DTransforms && !supports3DTransforms ) ) { | ||||
| 			document.body.setAttribute( 'class', 'no-transforms' ); | ||||
|  | ||||
| 			// If the browser doesn't support core features we won't be  | ||||
| 			// If the browser doesn't support core features we won't be | ||||
| 			// using JavaScript to control the presentation | ||||
| 			return; | ||||
| 		} | ||||
| @@ -125,12 +125,12 @@ var Reveal = (function(){ | ||||
|  | ||||
| 		// Loads the dependencies and continues to #start() once done | ||||
| 		load(); | ||||
| 		 | ||||
|  | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Finds and stores references to DOM elements which are  | ||||
| 	 * required by the presentation. If a required element is  | ||||
| 	 * Finds and stores references to DOM elements which are | ||||
| 	 * required by the presentation. If a required element is | ||||
| 	 * not found, it is created. | ||||
| 	 */ | ||||
| 	function setupDOM() { | ||||
| @@ -200,10 +200,10 @@ var Reveal = (function(){ | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Loads the dependencies of reveal.js. Dependencies are  | ||||
| 	 * defined via the configuration option 'dependencies'  | ||||
| 	 * and will be loaded prior to starting/binding reveal.js.  | ||||
| 	 * Some dependencies may have an 'async' flag, if so they  | ||||
| 	 * Loads the dependencies of reveal.js. Dependencies are | ||||
| 	 * defined via the configuration option 'dependencies' | ||||
| 	 * and will be loaded prior to starting/binding reveal.js. | ||||
| 	 * Some dependencies may have an 'async' flag, if so they | ||||
| 	 * will load after reveal.js has been started up. | ||||
| 	 */ | ||||
| 	function load() { | ||||
| @@ -233,7 +233,7 @@ var Reveal = (function(){ | ||||
| 		function proceed() { | ||||
| 			// Load asynchronous scripts | ||||
| 			head.js.apply( null, scriptsAsync ); | ||||
| 			 | ||||
|  | ||||
| 			start(); | ||||
| 		} | ||||
|  | ||||
| @@ -249,13 +249,13 @@ var Reveal = (function(){ | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Starts up reveal.js by binding input events and navigating  | ||||
| 	 * Starts up reveal.js by binding input events and navigating | ||||
| 	 * to the current URL deeplink if there is one. | ||||
| 	 */ | ||||
| 	function start() { | ||||
| 		// Make sure we've got all the DOM elements we need | ||||
| 		setupDOM(); | ||||
| 		 | ||||
|  | ||||
| 		// Subscribe to input | ||||
| 		addEventListeners(); | ||||
|  | ||||
| @@ -340,7 +340,7 @@ var Reveal = (function(){ | ||||
| 			dom.controlsLeft.addEventListener( 'click', preventAndForward( navigateLeft ), false ); | ||||
| 			dom.controlsRight.addEventListener( 'click', preventAndForward( navigateRight ), false ); | ||||
| 			dom.controlsUp.addEventListener( 'click', preventAndForward( navigateUp ), false ); | ||||
| 			dom.controlsDown.addEventListener( 'click', preventAndForward( navigateDown ), false );	 | ||||
| 			dom.controlsDown.addEventListener( 'click', preventAndForward( navigateDown ), false ); | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| @@ -357,7 +357,7 @@ var Reveal = (function(){ | ||||
| 		if ( config.progress && dom.progress ) { | ||||
| 			dom.progress.removeEventListener( 'click', preventAndForward( onProgressClick ), false ); | ||||
| 		} | ||||
| 		 | ||||
|  | ||||
| 		if ( config.controls && dom.controls ) { | ||||
| 			dom.controlsLeft.removeEventListener( 'click', preventAndForward( navigateLeft ), false ); | ||||
| 			dom.controlsRight.removeEventListener( 'click', preventAndForward( navigateRight ), false ); | ||||
| @@ -367,7 +367,7 @@ var Reveal = (function(){ | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Extend object a with the properties of object b.  | ||||
| 	 * Extend object a with the properties of object b. | ||||
| 	 * If there's a conflict, object b takes precedence. | ||||
| 	 */ | ||||
| 	function extend( a, b ) { | ||||
| @@ -378,8 +378,8 @@ var Reveal = (function(){ | ||||
|  | ||||
| 	/** | ||||
| 	 * Measures the distance in pixels between point a | ||||
| 	 * and point b.  | ||||
| 	 *  | ||||
| 	 * and point b. | ||||
| 	 * | ||||
| 	 * @param {Object} a point with x/y properties | ||||
| 	 * @param {Object} b point with x/y properties | ||||
| 	 */ | ||||
| @@ -391,10 +391,10 @@ var Reveal = (function(){ | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Prevents an events defaults behavior calls the  | ||||
| 	 * Prevents an events defaults behavior calls the | ||||
| 	 * specified delegate. | ||||
| 	 *  | ||||
| 	 * @param {Function} delegate The method to call  | ||||
| 	 * | ||||
| 	 * @param {Function} delegate The method to call | ||||
| 	 * after the wrapper has been executed | ||||
| 	 */ | ||||
| 	function preventAndForward( delegate ) { | ||||
| @@ -405,7 +405,7 @@ var Reveal = (function(){ | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Causes the address bar to hide on mobile devices,  | ||||
| 	 * Causes the address bar to hide on mobile devices, | ||||
| 	 * more vertical space ftw. | ||||
| 	 */ | ||||
| 	function removeAddressBar() { | ||||
| @@ -415,7 +415,7 @@ var Reveal = (function(){ | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Dispatches an event of the specified type from the  | ||||
| 	 * Dispatches an event of the specified type from the | ||||
| 	 * reveal DOM element. | ||||
| 	 */ | ||||
| 	function dispatchEvent( type, properties ) { | ||||
| @@ -434,7 +434,7 @@ var Reveal = (function(){ | ||||
|  | ||||
| 			for( var i = 0, len = nodes.length; i < len; i++ ) { | ||||
| 				var node = nodes[i]; | ||||
| 				 | ||||
|  | ||||
| 				if( node.textContent && !node.querySelector( 'img' ) && ( !node.className || !node.classList.contains( node, 'roll' ) ) ) { | ||||
| 					node.classList.add( 'roll' ); | ||||
| 					node.innerHTML = '<span data-title="'+ node.text +'">' + node.innerHTML + '</span>'; | ||||
| @@ -444,17 +444,17 @@ var Reveal = (function(){ | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Displays the overview of slides (quick nav) by  | ||||
| 	 * Displays the overview of slides (quick nav) by | ||||
| 	 * scaling down and arranging all slide elements. | ||||
| 	 *  | ||||
| 	 * Experimental feature, might be dropped if perf  | ||||
| 	 * | ||||
| 	 * Experimental feature, might be dropped if perf | ||||
| 	 * can't be improved. | ||||
| 	 */ | ||||
| 	function activateOverview() { | ||||
|  | ||||
| 		// Only proceed if enabled in config | ||||
| 		if( config.overview ) { | ||||
| 		 | ||||
|  | ||||
| 			dom.wrapper.classList.add( 'overview' ); | ||||
|  | ||||
| 			var horizontalSlides = document.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR ); | ||||
| @@ -462,7 +462,7 @@ var Reveal = (function(){ | ||||
| 			for( var i = 0, len1 = horizontalSlides.length; i < len1; i++ ) { | ||||
| 				var hslide = horizontalSlides[i], | ||||
| 					htransform = 'translateZ(-2500px) translate(' + ( ( i - indexh ) * 105 ) + '%, 0%)'; | ||||
| 				 | ||||
|  | ||||
| 				hslide.setAttribute( 'data-index-h', i ); | ||||
| 				hslide.style.display = 'block'; | ||||
| 				hslide.style.WebkitTransform = htransform; | ||||
| @@ -470,12 +470,12 @@ var Reveal = (function(){ | ||||
| 				hslide.style.msTransform = htransform; | ||||
| 				hslide.style.OTransform = htransform; | ||||
| 				hslide.style.transform = htransform; | ||||
| 			 | ||||
|  | ||||
| 				if( !hslide.classList.contains( 'stack' ) ) { | ||||
| 					// Navigate to this slide on click | ||||
| 					hslide.addEventListener( 'click', onOverviewSlideClicked, true ); | ||||
| 				} | ||||
| 		 | ||||
|  | ||||
| 				var verticalSlides = hslide.querySelectorAll( 'section' ); | ||||
|  | ||||
| 				for( var j = 0, len2 = verticalSlides.length; j < len2; j++ ) { | ||||
| @@ -494,19 +494,19 @@ var Reveal = (function(){ | ||||
| 					// Navigate to this slide on click | ||||
| 					vslide.addEventListener( 'click', onOverviewSlideClicked, true ); | ||||
| 				} | ||||
| 				 | ||||
|  | ||||
| 			} | ||||
|  | ||||
| 		} | ||||
|  | ||||
| 	} | ||||
| 	 | ||||
|  | ||||
| 	/** | ||||
| 	 * Exits the slide overview and enters the currently | ||||
| 	 * active slide. | ||||
| 	 */ | ||||
| 	function deactivateOverview() { | ||||
| 		 | ||||
|  | ||||
| 		// Only proceed if enabled in config | ||||
| 		if( config.overview ) { | ||||
|  | ||||
| @@ -529,15 +529,15 @@ var Reveal = (function(){ | ||||
| 			} | ||||
|  | ||||
| 			slide(); | ||||
| 			 | ||||
|  | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Toggles the slide overview mode on and off. | ||||
| 	 * | ||||
| 	 * @param {Boolean} override Optional flag which overrides the  | ||||
| 	 * toggle logic and forcibly sets the desired state. True means  | ||||
| 	 * @param {Boolean} override Optional flag which overrides the | ||||
| 	 * toggle logic and forcibly sets the desired state. True means | ||||
| 	 * overview is open, false means it's closed. | ||||
| 	 */ | ||||
| 	function toggleOverview( override ) { | ||||
| @@ -551,7 +551,7 @@ var Reveal = (function(){ | ||||
|  | ||||
| 	/** | ||||
| 	 * Checks if the overview is currently active. | ||||
| 	 *  | ||||
| 	 * | ||||
| 	 * @return {Boolean} true if the overview is active, | ||||
| 	 * false otherwise | ||||
| 	 */ | ||||
| @@ -561,26 +561,26 @@ var Reveal = (function(){ | ||||
|  | ||||
| 	/** | ||||
| 	 * Handling the fullscreen functionality via the fullscreen API | ||||
| 	 *  | ||||
| 	 * @see http://fullscreen.spec.whatwg.org/  | ||||
| 	 * @see https://developer.mozilla.org/en-US/docs/DOM/Using_fullscreen_mode  | ||||
| 	 * | ||||
| 	 * @see http://fullscreen.spec.whatwg.org/ | ||||
| 	 * @see https://developer.mozilla.org/en-US/docs/DOM/Using_fullscreen_mode | ||||
| 	 */ | ||||
| 	function enterFullscreen() { | ||||
| 		var element = document.body; | ||||
| 		 | ||||
|  | ||||
| 		// Check which implementation is available | ||||
| 		var requestMethod = element.requestFullScreen || | ||||
| 							element.webkitRequestFullScreen || | ||||
| 							element.mozRequestFullScreen || | ||||
| 							element.msRequestFullScreen; | ||||
| 		 | ||||
|  | ||||
| 		if( requestMethod ) { | ||||
| 			requestMethod.apply( element ); | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Enters the paused mode which fades everything on screen to  | ||||
| 	 * Enters the paused mode which fades everything on screen to | ||||
| 	 * black. | ||||
| 	 */ | ||||
| 	function pause() { | ||||
| @@ -612,11 +612,11 @@ var Reveal = (function(){ | ||||
| 	function isPaused() { | ||||
| 		return dom.wrapper.classList.contains( 'paused' ); | ||||
| 	} | ||||
| 	 | ||||
|  | ||||
| 	/** | ||||
| 	 * Steps from the current point in the presentation to the  | ||||
| 	 * slide which matches the specified horizontal and vertical  | ||||
| 	 * indices.  | ||||
| 	 * Steps from the current point in the presentation to the | ||||
| 	 * slide which matches the specified horizontal and vertical | ||||
| 	 * indices. | ||||
| 	 * | ||||
| 	 * @param {int} h Horizontal index of the target slide | ||||
| 	 * @param {int} v Vertical index of the target slide | ||||
| @@ -640,7 +640,7 @@ var Reveal = (function(){ | ||||
|  | ||||
| 		// Apply the new state | ||||
| 		stateLoop: for( var i = 0, len = state.length; i < len; i++ ) { | ||||
| 			// Check if this state existed on the previous slide. If it  | ||||
| 			// Check if this state existed on the previous slide. If it | ||||
| 			// did, we will avoid adding it repeatedly. | ||||
| 			for( var j = 0; j < stateBefore.length; j++ ) { | ||||
| 				if( stateBefore[j] === state[i] ) { | ||||
| @@ -671,7 +671,7 @@ var Reveal = (function(){ | ||||
| 		} | ||||
|  | ||||
| 		updateControls(); | ||||
| 		 | ||||
|  | ||||
| 		// Update the URL hash after a delay since updating it mid-transition | ||||
| 		// is likely to cause visual lag | ||||
| 		clearTimeout( writeURLTimeout ); | ||||
| @@ -691,7 +691,7 @@ var Reveal = (function(){ | ||||
| 		// Dispatch an event if the slide changed | ||||
| 		if( indexh !== indexhBefore || indexv !== indexvBefore ) { | ||||
| 			dispatchEvent( 'slidechanged', { | ||||
| 				'indexh': indexh,  | ||||
| 				'indexh': indexh, | ||||
| 				'indexv': indexv, | ||||
| 				'previousSlide': previousSlide, | ||||
| 				'currentSlide': currentSlide | ||||
| @@ -702,8 +702,8 @@ var Reveal = (function(){ | ||||
| 			previousSlide = null; | ||||
| 		} | ||||
|  | ||||
| 		// Solves an edge case where the previous slide maintains the  | ||||
| 		// 'present' class when navigating between adjacent vertical  | ||||
| 		// Solves an edge case where the previous slide maintains the | ||||
| 		// 'present' class when navigating between adjacent vertical | ||||
| 		// stacks | ||||
| 		if( previousSlide ) { | ||||
| 			previousSlide.classList.remove( 'present' ); | ||||
| @@ -713,14 +713,14 @@ var Reveal = (function(){ | ||||
| 	/** | ||||
| 	 * Updates one dimension of slides by showing the slide | ||||
| 	 * with the specified index. | ||||
| 	 *  | ||||
| 	 * | ||||
| 	 * @param {String} selector A CSS selector that will fetch | ||||
| 	 * the group of slides we are working with | ||||
| 	 * @param {Number} index The index of the slide that should be | ||||
| 	 * shown | ||||
| 	 *  | ||||
| 	 * | ||||
| 	 * @return {Number} The index of the slide that is now shown, | ||||
| 	 * might differ from the passed in index if it was out of  | ||||
| 	 * might differ from the passed in index if it was out of | ||||
| 	 * bounds. | ||||
| 	 */ | ||||
| 	function updateSlides( selector, index ) { | ||||
| @@ -728,7 +728,7 @@ var Reveal = (function(){ | ||||
| 		// an array | ||||
| 		var slides = Array.prototype.slice.call( document.querySelectorAll( selector ) ), | ||||
| 			slidesLength = slides.length; | ||||
| 		 | ||||
|  | ||||
| 		if( slidesLength ) { | ||||
|  | ||||
| 			// Should the index loop? | ||||
| @@ -739,14 +739,14 @@ var Reveal = (function(){ | ||||
| 					index = slidesLength + index; | ||||
| 				} | ||||
| 			} | ||||
| 			 | ||||
|  | ||||
| 			// Enforce max and minimum index bounds | ||||
| 			index = Math.max( Math.min( index, slidesLength - 1 ), 0 ); | ||||
| 			 | ||||
|  | ||||
| 			for( var i = 0; i < slidesLength; i++ ) { | ||||
| 				var element = slides[i]; | ||||
|  | ||||
| 				// Optimization; hide all slides that are three or more steps  | ||||
| 				// Optimization; hide all slides that are three or more steps | ||||
| 				// away from the present slide | ||||
| 				if( isOverviewActive() === false ) { | ||||
| 					// The distance loops so that it measures 1 between the first | ||||
| @@ -785,7 +785,7 @@ var Reveal = (function(){ | ||||
| 				state = state.concat( slideState.split( ' ' ) ); | ||||
| 			} | ||||
|  | ||||
| 			// If this slide has a data-autoslide attribtue associated use this as  | ||||
| 			// If this slide has a data-autoslide attribtue associated use this as | ||||
| 			// autoSlide value otherwise use the global configured time | ||||
| 			var slideAutoSlide = slides[index].getAttribute( 'data-autoslide' ); | ||||
| 			if( slideAutoSlide ) { | ||||
| @@ -796,13 +796,13 @@ var Reveal = (function(){ | ||||
|  | ||||
| 		} | ||||
| 		else { | ||||
| 			// Since there are no slides we can't be anywhere beyond the  | ||||
| 			// Since there are no slides we can't be anywhere beyond the | ||||
| 			// zeroth index | ||||
| 			index = 0; | ||||
| 		} | ||||
| 		 | ||||
|  | ||||
| 		return index; | ||||
| 		 | ||||
|  | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| @@ -810,7 +810,7 @@ var Reveal = (function(){ | ||||
| 	 */ | ||||
| 	function updateControls() { | ||||
| 		if ( config.controls && dom.controls ) { | ||||
| 			 | ||||
|  | ||||
| 			var routes = availableRoutes(); | ||||
|  | ||||
| 			// Remove the 'enabled' class from all directions | ||||
| @@ -829,7 +829,7 @@ var Reveal = (function(){ | ||||
|  | ||||
| 	/** | ||||
| 	 * Determine what available routes there are for navigation. | ||||
| 	 *  | ||||
| 	 * | ||||
| 	 * @return {Object} containing four booleans: left/right/up/down | ||||
| 	 */ | ||||
| 	function availableRoutes() { | ||||
| @@ -843,7 +843,7 @@ var Reveal = (function(){ | ||||
| 			down: indexv < verticalSlides.length - 1 | ||||
| 		}; | ||||
| 	} | ||||
| 	 | ||||
|  | ||||
| 	/** | ||||
| 	 * Reads the current URL (hash) and navigates accordingly. | ||||
| 	 */ | ||||
| @@ -854,7 +854,7 @@ var Reveal = (function(){ | ||||
| 		var bits = hash.slice( 2 ).split( '/' ), | ||||
| 			name = hash.replace( /#|\//gi, '' ); | ||||
|  | ||||
| 		// If the first bit is invalid and there is a name we can  | ||||
| 		// If the first bit is invalid and there is a name we can | ||||
| 		// assume that this is a named link | ||||
| 		if( isNaN( parseInt( bits[0], 10 ) ) && name.length ) { | ||||
| 			// Find the slide with the specified name | ||||
| @@ -878,32 +878,32 @@ var Reveal = (function(){ | ||||
| 			slide( h, v ); | ||||
| 		} | ||||
| 	} | ||||
| 	 | ||||
|  | ||||
| 	/** | ||||
| 	 * Updates the page URL (hash) to reflect the current | ||||
| 	 * state.  | ||||
| 	 * state. | ||||
| 	 */ | ||||
| 	function writeURL() { | ||||
| 		if( config.history ) { | ||||
| 			var url = '/'; | ||||
| 			 | ||||
|  | ||||
| 			// Only include the minimum possible number of components in | ||||
| 			// the URL | ||||
| 			if( indexh > 0 || indexv > 0 ) url += indexh; | ||||
| 			if( indexv > 0 ) url += '/' + indexv; | ||||
| 			 | ||||
|  | ||||
| 			window.location.hash = url; | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Retrieves the h/v location of the current, or specified,  | ||||
| 	 * Retrieves the h/v location of the current, or specified, | ||||
| 	 * slide. | ||||
| 	 *  | ||||
| 	 * @param {HTMLElement} slide If specified, the returned  | ||||
| 	 * index will be for this slide rather than the currently  | ||||
| 	 * | ||||
| 	 * @param {HTMLElement} slide If specified, the returned | ||||
| 	 * index will be for this slide rather than the currently | ||||
| 	 * active one | ||||
| 	 *  | ||||
| 	 * | ||||
| 	 * @return {Object} { h: <int>, v: <int> } | ||||
| 	 */ | ||||
| 	function getIndices( slide ) { | ||||
| @@ -933,7 +933,7 @@ var Reveal = (function(){ | ||||
|  | ||||
| 	/** | ||||
| 	 * Navigate to the next slide fragment. | ||||
| 	 *  | ||||
| 	 * | ||||
| 	 * @return {Boolean} true if there was a next fragment, | ||||
| 	 * false otherwise | ||||
| 	 */ | ||||
| @@ -966,7 +966,7 @@ var Reveal = (function(){ | ||||
|  | ||||
| 	/** | ||||
| 	 * Navigate to the previous slide fragment. | ||||
| 	 *  | ||||
| 	 * | ||||
| 	 * @return {Boolean} true if there was a previous fragment, | ||||
| 	 * false otherwise | ||||
| 	 */ | ||||
| @@ -993,7 +993,7 @@ var Reveal = (function(){ | ||||
| 				return true; | ||||
| 			} | ||||
| 		} | ||||
| 		 | ||||
|  | ||||
| 		return false; | ||||
| 	} | ||||
|  | ||||
| @@ -1008,7 +1008,7 @@ var Reveal = (function(){ | ||||
| 			autoSlideTimeout = setTimeout( navigateNext, autoSlide ); | ||||
| 		} | ||||
| 	} | ||||
| 	 | ||||
|  | ||||
| 	function navigateLeft() { | ||||
| 		// Prioritize hiding fragments | ||||
| 		if( isOverviewActive() || previousFragment() === false ) { | ||||
| @@ -1071,7 +1071,7 @@ var Reveal = (function(){ | ||||
| 			availableRoutes().down ? navigateDown() : navigateRight(); | ||||
| 		} | ||||
|  | ||||
| 		// If auto-sliding is enabled we need to cue up  | ||||
| 		// If auto-sliding is enabled we need to cue up | ||||
| 		// another timeout | ||||
| 		cueAutoSlide(); | ||||
| 	} | ||||
| @@ -1084,11 +1084,11 @@ var Reveal = (function(){ | ||||
|  | ||||
| 	/** | ||||
| 	 * Handler for the document level 'keydown' event. | ||||
| 	 *  | ||||
| 	 * | ||||
| 	 * @param {Object} event | ||||
| 	 */ | ||||
| 	function onDocumentKeyDown( event ) { | ||||
| 		// Disregard the event if the target is editable or a  | ||||
| 		// Disregard the event if the target is editable or a | ||||
| 		// modifier is present | ||||
| 		if ( document.querySelector( ':focus' ) !== null || event.shiftKey || event.altKey || event.ctrlKey || event.metaKey ) return; | ||||
|  | ||||
| @@ -1096,7 +1096,7 @@ var Reveal = (function(){ | ||||
|  | ||||
| 		switch( event.keyCode ) { | ||||
| 			// p, page up | ||||
| 			case 80: case 33: navigatePrev(); break;  | ||||
| 			case 80: case 33: navigatePrev(); break; | ||||
| 			// n, page down | ||||
| 			case 78: case 34: navigateNext(); break; | ||||
| 			// h, left | ||||
| @@ -1123,18 +1123,18 @@ var Reveal = (function(){ | ||||
| 				triggered = false; | ||||
| 		} | ||||
|  | ||||
| 		// If the input resulted in a triggered action we should prevent  | ||||
| 		// If the input resulted in a triggered action we should prevent | ||||
| 		// the browsers default behavior | ||||
| 		if( triggered ) { | ||||
| 			event.preventDefault(); | ||||
| 		} | ||||
| 		else if ( event.keyCode === 27 && supports3DTransforms ) { | ||||
| 			toggleOverview(); | ||||
| 	 | ||||
|  | ||||
| 			event.preventDefault(); | ||||
| 		} | ||||
|  | ||||
| 		// If auto-sliding is enabled we need to cue up  | ||||
| 		// If auto-sliding is enabled we need to cue up | ||||
| 		// another timeout | ||||
| 		cueAutoSlide(); | ||||
|  | ||||
| @@ -1149,7 +1149,7 @@ var Reveal = (function(){ | ||||
| 		touch.startY = event.touches[0].clientY; | ||||
| 		touch.startCount = event.touches.length; | ||||
|  | ||||
| 		// If there's two touches we need to memorize the distance  | ||||
| 		// If there's two touches we need to memorize the distance | ||||
| 		// between those two points to detect pinching | ||||
| 		if( event.touches.length === 2 && config.overview ) { | ||||
| 			touch.startSpan = distanceBetween( { | ||||
| @@ -1161,7 +1161,7 @@ var Reveal = (function(){ | ||||
| 			} ); | ||||
| 		} | ||||
| 	} | ||||
| 	 | ||||
|  | ||||
| 	/** | ||||
| 	 * Handler for the document level 'touchmove' event. | ||||
| 	 */ | ||||
| @@ -1171,7 +1171,7 @@ var Reveal = (function(){ | ||||
| 			var currentX = event.touches[0].clientX; | ||||
| 			var currentY = event.touches[0].clientY; | ||||
|  | ||||
| 			// If the touch started off with two points and still has  | ||||
| 			// If the touch started off with two points and still has | ||||
| 			// two active touches; test for the pinch gesture | ||||
| 			if( event.touches.length === 2 && touch.startCount === 2 && config.overview ) { | ||||
|  | ||||
| @@ -1184,7 +1184,7 @@ var Reveal = (function(){ | ||||
| 					y: touch.startY | ||||
| 				} ); | ||||
|  | ||||
| 				// If the span is larger than the desire amount we've got  | ||||
| 				// If the span is larger than the desire amount we've got | ||||
| 				// ourselves a pinch | ||||
| 				if( Math.abs( touch.startSpan - currentSpan ) > touch.threshold ) { | ||||
| 					touch.handled = true; | ||||
| @@ -1209,15 +1209,15 @@ var Reveal = (function(){ | ||||
| 				if( deltaX > touch.threshold && Math.abs( deltaX ) > Math.abs( deltaY ) ) { | ||||
| 					touch.handled = true; | ||||
| 					navigateLeft(); | ||||
| 				}  | ||||
| 				} | ||||
| 				else if( deltaX < -touch.threshold && Math.abs( deltaX ) > Math.abs( deltaY ) ) { | ||||
| 					touch.handled = true; | ||||
| 					navigateRight(); | ||||
| 				}  | ||||
| 				} | ||||
| 				else if( deltaY > touch.threshold ) { | ||||
| 					touch.handled = true; | ||||
| 					navigateUp(); | ||||
| 				}  | ||||
| 				} | ||||
| 				else if( deltaY < -touch.threshold ) { | ||||
| 					touch.handled = true; | ||||
| 					navigateDown(); | ||||
| @@ -1227,7 +1227,7 @@ var Reveal = (function(){ | ||||
|  | ||||
| 			} | ||||
| 		} | ||||
| 		// There's a bug with swiping on some Android devices unless  | ||||
| 		// There's a bug with swiping on some Android devices unless | ||||
| 		// the default action is always prevented | ||||
| 		else if( navigator.userAgent.match( /android/gi ) ) { | ||||
| 			event.preventDefault(); | ||||
| @@ -1242,7 +1242,7 @@ var Reveal = (function(){ | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Handles mouse wheel scrolling, throttled to avoid skipping  | ||||
| 	 * Handles mouse wheel scrolling, throttled to avoid skipping | ||||
| 	 * multiple slides. | ||||
| 	 */ | ||||
| 	function onDocumentMouseScroll( event ){ | ||||
| @@ -1260,7 +1260,7 @@ var Reveal = (function(){ | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Clicking on the progress bar results in a navigation to the  | ||||
| 	 * Clicking on the progress bar results in a navigation to the | ||||
| 	 * closest approximate horizontal slide using this equation: | ||||
| 	 * | ||||
| 	 * ( clickX / presentationWidth ) * numberOfSlides | ||||
| @@ -1271,10 +1271,10 @@ var Reveal = (function(){ | ||||
|  | ||||
| 		slide( slideIndex ); | ||||
| 	} | ||||
| 	 | ||||
|  | ||||
| 	/** | ||||
| 	 * Handler for the window level 'hashchange' event. | ||||
| 	 *  | ||||
| 	 * | ||||
| 	 * @param {Object} event | ||||
| 	 */ | ||||
| 	function onWindowHashChange( event ) { | ||||
| @@ -1285,7 +1285,7 @@ var Reveal = (function(){ | ||||
| 	 * Invoked when a slide is and we're in the overview. | ||||
| 	 */ | ||||
| 	function onOverviewSlideClicked( event ) { | ||||
| 		// TODO There's a bug here where the event listeners are not  | ||||
| 		// TODO There's a bug here where the event listeners are not | ||||
| 		// removed after deactivating the overview. | ||||
| 		if( isOverviewActive() ) { | ||||
| 			event.preventDefault(); | ||||
| @@ -1299,7 +1299,7 @@ var Reveal = (function(){ | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	 | ||||
|  | ||||
| 	// --------------------------------------------------------------------// | ||||
| 	// ------------------------------- API --------------------------------// | ||||
| 	// --------------------------------------------------------------------// | ||||
| @@ -1307,7 +1307,7 @@ var Reveal = (function(){ | ||||
|  | ||||
| 	return { | ||||
| 		initialize: initialize, | ||||
| 		 | ||||
|  | ||||
| 		// Navigation methods | ||||
| 		slide: slide, | ||||
| 		left: navigateLeft, | ||||
| @@ -1369,5 +1369,5 @@ var Reveal = (function(){ | ||||
| 			} | ||||
| 		} | ||||
| 	}; | ||||
| 	 | ||||
|  | ||||
| })(); | ||||
							
								
								
									
										2
									
								
								js/reveal.min.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								js/reveal.min.js
									
									
									
									
										vendored
									
									
								
							| @@ -2,7 +2,7 @@ | ||||
|  * reveal.js 2.1 r35 | ||||
|  * http://lab.hakim.se/reveal-js | ||||
|  * MIT licensed | ||||
|  *  | ||||
|  * | ||||
|  * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se | ||||
|  */ | ||||
| var Reveal=(function(){var l=".reveal .slides>section",b=".reveal .slides>section.present>section",R={controls:true,progress:true,history:false,keyboard:true,overview:true,loop:false,autoSlide:0,mouseWheel:true,rollingLinks:true,theme:null,transition:"default",dependencies:[]},Y=R.autoSlide,m=0,e=0,y,G,ak=[],f={},T="WebkitPerspective" in document.body.style||"MozPerspective" in document.body.style||"msPerspective" in document.body.style||"OPerspective" in document.body.style||"perspective" in document.body.style,n="WebkitTransform" in document.body.style||"MozTransform" in document.body.style||"msTransform" in document.body.style||"OTransform" in document.body.style||"transform" in document.body.style,z=0,k=0,D=0,ac={startX:0,startY:0,startSpan:0,startCount:0,handled:false,threshold:80}; | ||||
|   | ||||
| @@ -39,7 +39,7 @@ var RevealNotes = (function() { | ||||
| 			notesPopup.postMessage( JSON.stringify( slideData ), '*' ); | ||||
| 		} | ||||
|  | ||||
| 		// The main presentation is kept in sync when navigating the  | ||||
| 		// The main presentation is kept in sync when navigating the | ||||
| 		// note slides so that the popup may be used as a remote | ||||
| 		window.addEventListener( 'message', function( event ) { | ||||
| 			var data = JSON.parse( event.data ); | ||||
| @@ -60,7 +60,7 @@ var RevealNotes = (function() { | ||||
|  | ||||
| 	// Open the notes when the 's' key is hit | ||||
| 	document.addEventListener( 'keydown', function( event ) { | ||||
| 		// Disregard the event if the target is editable or a  | ||||
| 		// Disregard the event if the target is editable or a | ||||
| 		// modifier is present | ||||
| 		if ( document.querySelector( ':focus' ) !== null || event.shiftKey || event.altKey || event.ctrlKey || event.metaKey ) return; | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user