|
1 | | -//// jQuery.leanModal2.js v2.5 |
| 1 | +//// jQuery.leanModal2.js v2.6.2 |
2 | 2 | // MIT Licensed by eustasy https://eustasy.org |
3 | 3 | // Based on leanModal v1.1 by Ray Stone - http://finelysliced.com.au |
4 | 4 |
|
|
16 | 16 | //// Default Options |
17 | 17 | // Set some Defaults. |
18 | 18 | var defaults = { |
19 | | - top: '15vh', |
20 | 19 | overlayOpacity: 0.7, |
21 | 20 | closeButton: '.js-leanmodal-close', |
22 | 21 | disableCloseOnOverlayClick: false, |
|
30 | 29 | //// Close the Modal |
31 | 30 | // FUNCTION: Fade out the overlay and a passed identifier. |
32 | 31 | function leanModal_Close(modal_id) { |
33 | | - $('.js-leanmodal-overlay').fadeOut(options.fadeTime) |
| 32 | + $('#js-leanmodal-overlay').fadeOut(options.fadeTime) |
34 | 33 | $(modal_id).fadeOut(options.fadeTime) |
35 | | - $('.js-leanmodal-overlay').unbind('click') |
| 34 | + $('#js-leanmodal-overlay').unbind('click') |
36 | 35 | $(document).off('keyup') |
37 | | - } |
38 | | - |
39 | | - //// There can be only one. |
40 | | - // Overlay. If there isn't an overlay, add one. |
41 | | - if ( $('.js-leanmodal-overlay').length == 0 ) { |
42 | | - var style = 'background: #000; display: none; height: 100%; left: 0; position: fixed; top: 0; width: 100%; z-index: 100;' |
43 | | - var overlay = $('<div class="js-leanmodal-overlay" style="' + style + '"></div>') |
44 | | - $('body').append(overlay) |
| 36 | + $(modal_id).appendTo('body') |
| 37 | + $('#js-leanmodal-overlay').remove() |
45 | 38 | } |
46 | 39 |
|
47 | 40 | //// Everything is Linked |
|
89 | 82 | }) |
90 | 83 | } |
91 | 84 |
|
| 85 | + //// There can be only one. |
| 86 | + // Overlay. If there isn't an overlay, add one. |
| 87 | + if ( $('#js-leanmodal-overlay').length == 0 ) { |
| 88 | + var style = |
| 89 | + 'background: rgba(0, 0, 0, ' + |
| 90 | + options.overlayOpacity + |
| 91 | + '); display: none; height: 100%; left: 0; position: fixed; top: 0; width: 100%; z-index: 100; ' + |
| 92 | + 'align-items: center; justify-content: center;' |
| 93 | + var overlay = $('<div id="js-leanmodal-overlay" style="' + style + '"></div>') |
| 94 | + $('body').append(overlay) |
| 95 | + } |
| 96 | + |
92 | 97 | //// Envelope in Darkness |
93 | 98 | // Close the modal when someone clicks on the overlay, |
94 | 99 | // except when `disableCloseOnOverlayClick` is set to `true` |
95 | 100 | if ( !options.disableCloseOnOverlayClick ) { |
96 | | - $('.js-leanmodal-overlay').click(function() { |
97 | | - leanModal_Close(modal_id) |
| 101 | + $('#js-leanmodal-overlay').click(function(e) { |
| 102 | + if ( e.target == this ) { |
| 103 | + leanModal_Close(modal_id) |
| 104 | + } |
98 | 105 | }) |
99 | 106 | } |
100 | 107 |
|
|
106 | 113 | if ( options.modalCenter ) { |
107 | 114 | $(modal_id).css({ |
108 | 115 | 'display': 'block', |
109 | | - //'left': 50 + '%', |
110 | | - //'margin-left': - ( modal_width / 2 ) + 'px', |
111 | | - 'margin-left': '50%', |
112 | | - 'transform': 'translateX(-50%)', |
113 | 116 | 'opacity': 0, |
114 | | - 'position': 'fixed', |
115 | | - 'top': options.top, |
116 | 117 | 'z-index': 11000, |
117 | 118 | }) |
| 119 | + $(modal_id).appendTo('#js-leanmodal-overlay') |
118 | 120 | } |
119 | 121 |
|
120 | 122 | //// Curtain Up |
121 | 123 | // Fade in the modal and overlay. |
122 | | - $('.js-leanmodal-overlay').css({ 'display': 'block', opacity: 0 }) |
123 | | - $('.js-leanmodal-overlay').fadeTo(options.fadeTime, options.overlayOpacity) |
| 124 | + $('#js-leanmodal-overlay').css({ 'display': 'flex', opacity: 0 }) |
| 125 | + $('#js-leanmodal-overlay').fadeTo(options.fadeTime, 1) |
124 | 126 | $(modal_id).fadeTo(options.fadeTime, 1) |
125 | 127 |
|
126 | 128 | //// Default Prevention |
|
0 commit comments