app/assets/javascripts/semantic-ui/modal.js in semantic-ui-sass-0.10.3.0 vs app/assets/javascripts/semantic-ui/modal.js in semantic-ui-sass-0.11.0.0
- old
+ new
@@ -69,13 +69,15 @@
return;
}
$dimmable = $context
.dimmer({
closable : false,
- useCSS : module.is.modernBrowser(),
- show : settings.duration * 0.9,
- hide : settings.duration * 1.1
+ useCSS : true,
+ duration: {
+ show : settings.duration * 0.9,
+ hide : settings.duration * 1.1
+ }
})
.dimmer('add content', $module)
;
$dimmer = $dimmable
.dimmer('get dimmer')
@@ -279,52 +281,58 @@
module.hideDimmer();
module.hideModal(callback);
},
hideDimmer: function() {
- if( $dimmable.dimmer('is active') ) {
- module.debug('Hiding dimmer');
- if(settings.closable) {
- $dimmer
- .off('click' + eventNamespace)
- ;
- }
- $dimmable.dimmer('hide');
- }
- else {
+ if( !module.is.active() ) {
module.debug('Dimmer is not visible cannot hide');
+ return;
}
+ module.debug('Hiding dimmer');
+ if(settings.closable) {
+ $dimmer
+ .off('click' + eventNamespace)
+ ;
+ }
+ $dimmable.dimmer('hide', function() {
+ $module
+ .transition('reset')
+ ;
+ module.remove.active();
+ });
},
hideModal: function(callback) {
callback = $.isFunction(callback)
? callback
: function(){}
;
- if( module.is.active() ) {
- module.debug('Hiding modal');
- module.remove.keyboardShortcuts();
- if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) {
- $module
- .transition(settings.transition + ' out', settings.duration, function() {
- module.remove.active();
- module.restore.focus();
- callback();
- })
- ;
- }
- else {
- $module
- .fadeOut(settings.duration, settings.easing, function() {
- module.remove.active();
- module.restore.focus();
- callback();
- })
- ;
- }
- $.proxy(settings.onHide, element)();
+ if( !module.is.active() ) {
+ module.debug('Cannot hide modal it is not active');
+ return;
}
+ module.debug('Hiding modal');
+ module.remove.keyboardShortcuts();
+ if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) {
+ $module
+ .transition(settings.transition + ' out', settings.duration, function() {
+ module.remove.active();
+ module.restore.focus();
+ callback();
+ })
+ ;
+ }
+ else {
+ $module
+ .fadeOut(settings.duration, settings.easing, function() {
+ module.remove.active();
+ module.restore.focus();
+ callback();
+ })
+ ;
+ }
+ $.proxy(settings.onHide, element)();
},
hideAll: function(callback) {
callback = $.isFunction(callback)
? callback
@@ -412,12 +420,12 @@
is: {
active: function() {
return $module.hasClass(className.active);
},
modernBrowser: function() {
- // lol
- return (navigator.appName !== 'Microsoft Internet Explorer');
+ // appName for IE11 reports 'Netscape' can no longer use
+ return !(window.ActiveXObject || "ActiveXObject" in window);
}
},
set: {
active: function() {
@@ -567,40 +575,40 @@
performance = [];
}
},
invoke: function(query, passedArguments, context) {
var
+ object = instance,
maxDepth,
found,
response
;
passedArguments = passedArguments || queryArguments;
context = element || context;
- if(typeof query == 'string' && instance !== undefined) {
+ if(typeof query == 'string' && object !== undefined) {
query = query.split(/[\. ]/);
maxDepth = query.length - 1;
$.each(query, function(depth, value) {
var camelCaseValue = (depth != maxDepth)
? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1)
: query
;
- if( $.isPlainObject( instance[camelCaseValue] ) && (depth != maxDepth) ) {
- instance = instance[camelCaseValue];
+ if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) {
+ object = object[camelCaseValue];
}
- else if( instance[camelCaseValue] !== undefined ) {
- found = instance[camelCaseValue];
+ else if( object[camelCaseValue] !== undefined ) {
+ found = object[camelCaseValue];
return false;
}
- else if( $.isPlainObject( instance[value] ) && (depth != maxDepth) ) {
- instance = instance[value];
+ else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) {
+ object = object[value];
}
- else if( instance[value] !== undefined ) {
- found = instance[value];
+ else if( object[value] !== undefined ) {
+ found = object[value];
return false;
}
else {
- module.error(error.method, query);
return false;
}
});
}
if ( $.isFunction( found ) ) {
@@ -646,10 +654,10 @@
$.fn.modal.settings = {
name : 'Modal',
namespace : 'modal',
- debug : true,
+ debug : false,
verbose : true,
performance : true,
closable : true,
context : 'body',
\ No newline at end of file