New file |
0,0 → 1,51 |
/* |
* jQuery UI Effects Pulsate 1.8.5 |
* |
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) |
* Dual licensed under the MIT or GPL Version 2 licenses. |
* http://jquery.org/license |
* |
* http://docs.jquery.com/UI/Effects/Pulsate |
* |
* Depends: |
* jquery.effects.core.js |
*/ |
(function( $, undefined ) { |
|
$.effects.pulsate = function(o) { |
return this.queue(function() { |
var elem = $(this), |
mode = $.effects.setMode(elem, o.options.mode || 'show'); |
times = ((o.options.times || 5) * 2) - 1; |
duration = o.duration ? o.duration / 2 : $.fx.speeds._default / 2, |
isVisible = elem.is(':visible'), |
animateTo = 0; |
|
if (!isVisible) { |
elem.css('opacity', 0).show(); |
animateTo = 1; |
} |
|
if ((mode == 'hide' && isVisible) || (mode == 'show' && !isVisible)) { |
times--; |
} |
|
for (var i = 0; i < times; i++) { |
elem.animate({ opacity: animateTo }, duration, o.options.easing); |
animateTo = (animateTo + 1) % 2; |
} |
|
elem.animate({ opacity: animateTo }, duration, o.options.easing, function() { |
if (animateTo == 0) { |
elem.hide(); |
} |
(o.callback && o.callback.apply(this, arguments)); |
}); |
|
elem |
.queue('fx', function() { elem.dequeue(); }) |
.dequeue(); |
}); |
}; |
|
})(jQuery); |