diff --git a/index.html b/index.html index 56060255a86b1b7327549c70f97917ed4f0a049a..34ada2cf7a85e8897465217a7b7188ac22fe5f6a 100644 --- a/index.html +++ b/index.html @@ -92,7 +92,7 @@ <section> <h2>Point of View</h2> <p> - Press <strong>ESC</strong> to enter the slide overview. Hold down alt and click on any element to zoom in on it using <a href="http://lab.hakim.se/zoom-js">zoom.js</a>. + Press <strong>ESC</strong> to enter the slide overview. Hold down alt and click on any element to zoom in on it using <a href="http://lab.hakim.se/zoom-js">zoom.js</a>. Alt + click anywhere to zoom back out. </p> </section> @@ -342,7 +342,7 @@ function linkify( selector ) { { src: 'lib/js/classList.js', condition: function() { return !document.body.classList; } }, { src: 'lib/js/showdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } }, { src: 'lib/js/data-markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } }, - { src: 'lib/js/zoom.js', condition: function() { return !!document.body.classList; } }, + { src: 'plugin/zoom-js/zoom.js', condition: function() { return !!document.body.classList; } }, { src: '/socket.io/socket.io.js', async: true, condition: function() { return window.location.host === 'localhost:1947'; } }, { src: 'plugin/speakernotes/client.js', async: true, condition: function() { return window.location.host === 'localhost:1947'; } } ] diff --git a/lib/js/zoom.js b/plugin/zoom-js/zoom.js similarity index 95% rename from lib/js/zoom.js rename to plugin/zoom-js/zoom.js index 7fba5239adeb600dbece0cb742ad4f09074976d5..0ca387509aa40b7c12c855bce51a6aefd567639c 100644 --- a/lib/js/zoom.js +++ b/plugin/zoom-js/zoom.js @@ -1,3 +1,13 @@ +// Custom reveal.js integration +(function(){ + document.querySelector( '.reveal' ).addEventListener( 'click', function( event ) { + if( event.altKey ) { + event.preventDefault(); + zoom.to({ element: event.target, pan: false }); + } + } ); +})(); + /*! * zoom.js 0.2 (modified version for use with reveal.js) * http://lab.hakim.se/zoom-js @@ -41,7 +51,7 @@ var zoom = (function(){ if( level !== 1 && event.keyCode === 27 ) { zoom.out(); } - } ); + }, false ); // Monitor mouse movement for panning document.addEventListener( 'mousemove', function( event ) { @@ -49,7 +59,7 @@ var zoom = (function(){ mouseX = event.clientX; mouseY = event.clientY; } - } ); + }, false ); /** * Applies the CSS required to zoom in, prioritizes use of CSS3 @@ -232,26 +242,3 @@ var zoom = (function(){ })(); - - - -// Custom reveal.js integration -(function(){ - var modifierIsActive = false; - - function updateKeyFlag( event ) { - modifierIsActive = event.altKey; - } - - document.addEventListener( 'keypress', updateKeyFlag, false ); - document.addEventListener( 'keydown', updateKeyFlag, false ); - document.addEventListener( 'keyup', updateKeyFlag, false ); - - document.querySelector( '.reveal' ).addEventListener( 'click', function( event ) { - if( modifierIsActive ) { - event.preventDefault(); - zoom.to({ element: event.target, pan: false }); - } - } ); -})(); -