53 lines
1.6 KiB
JavaScript
53 lines
1.6 KiB
JavaScript
|
(function ( $ ) {
|
||
|
$.fn.flashOnce = function() {
|
||
|
var target = this;
|
||
|
this
|
||
|
.addClass('flash-on')
|
||
|
.delay(1000) // this delay is linked to the transition in the flash-on CSS class.
|
||
|
.queue(function() {
|
||
|
target
|
||
|
.removeClass('flash-on')
|
||
|
.addClass('flash-off')
|
||
|
.dequeue()
|
||
|
;})
|
||
|
.delay(1000) // this delay is just to clean up the flash-X classes.
|
||
|
.queue(function() {
|
||
|
target
|
||
|
.removeClass('flash-on flash-off')
|
||
|
.dequeue()
|
||
|
;})
|
||
|
;
|
||
|
return this;
|
||
|
};
|
||
|
|
||
|
/**
|
||
|
* Fades out the element, then erases its contents and shows the now-empty element again.
|
||
|
*/
|
||
|
$.fn.fadeOutAndClear = function(fade_speed) {
|
||
|
var target = this;
|
||
|
this
|
||
|
.fadeOut(fade_speed, function() {
|
||
|
target
|
||
|
.html('')
|
||
|
.show();
|
||
|
});
|
||
|
}
|
||
|
|
||
|
$.fn.hideAndRemove = function(hide_speed, finished) {
|
||
|
this.slideUp(hide_speed, function() {
|
||
|
this.remove();
|
||
|
if (typeof finished !== 'undefined') finished();
|
||
|
});
|
||
|
}
|
||
|
|
||
|
$.fn.removeClassPrefix = function(prefix) {
|
||
|
this.each(function(i, el) {
|
||
|
var classes = el.className.split(" ").filter(function(c) {
|
||
|
return c.lastIndexOf(prefix, 0) !== 0;
|
||
|
});
|
||
|
el.className = $.trim(classes.join(" "));
|
||
|
});
|
||
|
return this;
|
||
|
};
|
||
|
}(jQuery));
|