123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- /**
- * modalEffects.js v1.0.0
- * http://www.codrops.com
- *
- * Licensed under the MIT license.
- * http://www.opensource.org/licenses/mit-license.php
- *
- * Copyright 2013, Codrops
- * http://www.codrops.com
- */
- var ModalEffects = (function() {
- function init() {
- var overlay = document.querySelector( '.md-overlay' );
- [].slice.call( document.querySelectorAll( '.md-trigger' ) ).forEach( function( el, i ) {
- var modal = document.querySelector( '#' + el.getAttribute( 'data-modal' ) ),
- close = modal.querySelector( '.md-close' );
- function removeModal( hasPerspective ) {
- classie.remove( modal, 'md-show' );
- if( hasPerspective ) {
- classie.remove( document.documentElement, 'md-perspective' );
- }
- }
- function removeModalHandler() {
- removeModal( classie.has( el, 'md-setperspective' ) );
- }
- el.addEventListener( 'click', function( ev ) {
- classie.add( modal, 'md-show' );
- overlay.removeEventListener( 'click', removeModalHandler );
- overlay.addEventListener( 'click', removeModalHandler );
- if( classie.has( el, 'md-setperspective' ) ) {
- setTimeout( function() {
- classie.add( document.documentElement, 'md-perspective' );
- }, 25 );
- }
- });
- close.addEventListener( 'click', function( ev ) {
- ev.stopPropagation();
- removeModalHandler();
- });
- } );
- }
- init();
- })();
|