diff options
Diffstat (limited to 'plugin/zoom-js/zoom.js')
-rw-r--r-- | plugin/zoom-js/zoom.js | 39 |
1 files changed, 22 insertions, 17 deletions
diff --git a/plugin/zoom-js/zoom.js b/plugin/zoom-js/zoom.js index 8531790..92c3ba5 100644 --- a/plugin/zoom-js/zoom.js +++ b/plugin/zoom-js/zoom.js @@ -1,29 +1,34 @@ // Custom reveal.js integration -(function(){ - var revealElement = document.querySelector( '.reveal' ); - if( revealElement ) { +var RevealZoom = (function(){ - revealElement.addEventListener( 'mousedown', function( event ) { - var defaultModifier = /Linux/.test( window.navigator.platform ) ? 'ctrl' : 'alt'; + return { + init: function() { - var modifier = ( Reveal.getConfig().zoomKey ? Reveal.getConfig().zoomKey : defaultModifier ) + 'Key'; - var zoomLevel = ( Reveal.getConfig().zoomLevel ? Reveal.getConfig().zoomLevel : 2 ); + Reveal.getRevealElement().addEventListener( 'mousedown', function( event ) { + var defaultModifier = /Linux/.test( window.navigator.platform ) ? 'ctrl' : 'alt'; - if( event[ modifier ] && !Reveal.isOverview() ) { - event.preventDefault(); + var modifier = ( Reveal.getConfig().zoomKey ? Reveal.getConfig().zoomKey : defaultModifier ) + 'Key'; + var zoomLevel = ( Reveal.getConfig().zoomLevel ? Reveal.getConfig().zoomLevel : 2 ); - zoom.to({ - x: event.clientX, - y: event.clientY, - scale: zoomLevel, - pan: false - }); - } - } ); + if( event[ modifier ] && !Reveal.isOverview() ) { + event.preventDefault(); + + zoom.to({ + x: event.clientX, + y: event.clientY, + scale: zoomLevel, + pan: false + }); + } + } ); + } } + })(); +Reveal.registerPlugin( 'zoom', RevealZoom ); + /*! * zoom.js 0.3 (modified for use with reveal.js) * http://lab.hakim.se/zoom-js |