|
@@ -461,6 +461,8 @@
|
|
|
*/
|
|
|
function start() {
|
|
|
|
|
|
+ loaded = true;
|
|
|
+
|
|
|
// Make sure we've got all the DOM elements we need
|
|
|
setupDOM();
|
|
|
|
|
@@ -488,8 +490,6 @@
|
|
|
// Enable transitions now that we're loaded
|
|
|
dom.slides.classList.remove( 'no-transition' );
|
|
|
|
|
|
- loaded = true;
|
|
|
-
|
|
|
dom.wrapper.classList.add( 'ready' );
|
|
|
|
|
|
dispatchEvent( 'ready', {
|
|
@@ -1014,14 +1014,22 @@
|
|
|
*/
|
|
|
function configure( options ) {
|
|
|
|
|
|
- var numberOfSlides = dom.wrapper.querySelectorAll( SLIDES_SELECTOR ).length;
|
|
|
-
|
|
|
- dom.wrapper.classList.remove( config.transition );
|
|
|
+ var oldTransition = config.transition;
|
|
|
|
|
|
// New config options may be passed when this method
|
|
|
// is invoked through the API after initialization
|
|
|
if( typeof options === 'object' ) extend( config, options );
|
|
|
|
|
|
+ // Abort if reveal.js hasn't finished loading, config
|
|
|
+ // changes will be applied automatically once loading
|
|
|
+ // finishes
|
|
|
+ if( loaded === false ) return;
|
|
|
+
|
|
|
+ var numberOfSlides = dom.wrapper.querySelectorAll( SLIDES_SELECTOR ).length;
|
|
|
+
|
|
|
+ // Remove the previously configured transition class
|
|
|
+ dom.wrapper.classList.remove( oldTransition );
|
|
|
+
|
|
|
// Force linear transition based on browser capabilities
|
|
|
if( features.transforms3d === false ) config.transition = 'linear';
|
|
|
|