corrade-http-templates – Blame information for rev 61

Subversion Repositories:
Rev:
Rev Author Line No. Line
61 office 1 define( [
2 "./core",
3 "./core/camelCase",
4 "./var/document",
5 "./var/isFunction",
6 "./var/rcssNum",
7 "./var/rnothtmlwhite",
8 "./css/var/cssExpand",
9 "./css/var/isHiddenWithinTree",
10 "./css/var/swap",
11 "./css/adjustCSS",
12 "./data/var/dataPriv",
13 "./css/showHide",
14  
15 "./core/init",
16 "./queue",
17 "./deferred",
18 "./traversing",
19 "./manipulation",
20 "./css",
21 "./effects/Tween"
22 ], function( jQuery, camelCase, document, isFunction, rcssNum, rnothtmlwhite, cssExpand,
23 isHiddenWithinTree, swap, adjustCSS, dataPriv, showHide ) {
24  
25 "use strict";
26  
27 var
28 fxNow, inProgress,
29 rfxtypes = /^(?:toggle|show|hide)$/,
30 rrun = /queueHooks$/;
31  
32 function schedule() {
33 if ( inProgress ) {
34 if ( document.hidden === false && window.requestAnimationFrame ) {
35 window.requestAnimationFrame( schedule );
36 } else {
37 window.setTimeout( schedule, jQuery.fx.interval );
38 }
39  
40 jQuery.fx.tick();
41 }
42 }
43  
44 // Animations created synchronously will run synchronously
45 function createFxNow() {
46 window.setTimeout( function() {
47 fxNow = undefined;
48 } );
49 return ( fxNow = Date.now() );
50 }
51  
52 // Generate parameters to create a standard animation
53 function genFx( type, includeWidth ) {
54 var which,
55 i = 0,
56 attrs = { height: type };
57  
58 // If we include width, step value is 1 to do all cssExpand values,
59 // otherwise step value is 2 to skip over Left and Right
60 includeWidth = includeWidth ? 1 : 0;
61 for ( ; i < 4; i += 2 - includeWidth ) {
62 which = cssExpand[ i ];
63 attrs[ "margin" + which ] = attrs[ "padding" + which ] = type;
64 }
65  
66 if ( includeWidth ) {
67 attrs.opacity = attrs.width = type;
68 }
69  
70 return attrs;
71 }
72  
73 function createTween( value, prop, animation ) {
74 var tween,
75 collection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ "*" ] ),
76 index = 0,
77 length = collection.length;
78 for ( ; index < length; index++ ) {
79 if ( ( tween = collection[ index ].call( animation, prop, value ) ) ) {
80  
81 // We're done with this property
82 return tween;
83 }
84 }
85 }
86  
87 function defaultPrefilter( elem, props, opts ) {
88 var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display,
89 isBox = "width" in props || "height" in props,
90 anim = this,
91 orig = {},
92 style = elem.style,
93 hidden = elem.nodeType && isHiddenWithinTree( elem ),
94 dataShow = dataPriv.get( elem, "fxshow" );
95  
96 // Queue-skipping animations hijack the fx hooks
97 if ( !opts.queue ) {
98 hooks = jQuery._queueHooks( elem, "fx" );
99 if ( hooks.unqueued == null ) {
100 hooks.unqueued = 0;
101 oldfire = hooks.empty.fire;
102 hooks.empty.fire = function() {
103 if ( !hooks.unqueued ) {
104 oldfire();
105 }
106 };
107 }
108 hooks.unqueued++;
109  
110 anim.always( function() {
111  
112 // Ensure the complete handler is called before this completes
113 anim.always( function() {
114 hooks.unqueued--;
115 if ( !jQuery.queue( elem, "fx" ).length ) {
116 hooks.empty.fire();
117 }
118 } );
119 } );
120 }
121  
122 // Detect show/hide animations
123 for ( prop in props ) {
124 value = props[ prop ];
125 if ( rfxtypes.test( value ) ) {
126 delete props[ prop ];
127 toggle = toggle || value === "toggle";
128 if ( value === ( hidden ? "hide" : "show" ) ) {
129  
130 // Pretend to be hidden if this is a "show" and
131 // there is still data from a stopped show/hide
132 if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) {
133 hidden = true;
134  
135 // Ignore all other no-op show/hide data
136 } else {
137 continue;
138 }
139 }
140 orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop );
141 }
142 }
143  
144 // Bail out if this is a no-op like .hide().hide()
145 propTween = !jQuery.isEmptyObject( props );
146 if ( !propTween && jQuery.isEmptyObject( orig ) ) {
147 return;
148 }
149  
150 // Restrict "overflow" and "display" styles during box animations
151 if ( isBox && elem.nodeType === 1 ) {
152  
153 // Support: IE <=9 - 11, Edge 12 - 15
154 // Record all 3 overflow attributes because IE does not infer the shorthand
155 // from identically-valued overflowX and overflowY and Edge just mirrors
156 // the overflowX value there.
157 opts.overflow = [ style.overflow, style.overflowX, style.overflowY ];
158  
159 // Identify a display type, preferring old show/hide data over the CSS cascade
160 restoreDisplay = dataShow && dataShow.display;
161 if ( restoreDisplay == null ) {
162 restoreDisplay = dataPriv.get( elem, "display" );
163 }
164 display = jQuery.css( elem, "display" );
165 if ( display === "none" ) {
166 if ( restoreDisplay ) {
167 display = restoreDisplay;
168 } else {
169  
170 // Get nonempty value(s) by temporarily forcing visibility
171 showHide( [ elem ], true );
172 restoreDisplay = elem.style.display || restoreDisplay;
173 display = jQuery.css( elem, "display" );
174 showHide( [ elem ] );
175 }
176 }
177  
178 // Animate inline elements as inline-block
179 if ( display === "inline" || display === "inline-block" && restoreDisplay != null ) {
180 if ( jQuery.css( elem, "float" ) === "none" ) {
181  
182 // Restore the original display value at the end of pure show/hide animations
183 if ( !propTween ) {
184 anim.done( function() {
185 style.display = restoreDisplay;
186 } );
187 if ( restoreDisplay == null ) {
188 display = style.display;
189 restoreDisplay = display === "none" ? "" : display;
190 }
191 }
192 style.display = "inline-block";
193 }
194 }
195 }
196  
197 if ( opts.overflow ) {
198 style.overflow = "hidden";
199 anim.always( function() {
200 style.overflow = opts.overflow[ 0 ];
201 style.overflowX = opts.overflow[ 1 ];
202 style.overflowY = opts.overflow[ 2 ];
203 } );
204 }
205  
206 // Implement show/hide animations
207 propTween = false;
208 for ( prop in orig ) {
209  
210 // General show/hide setup for this element animation
211 if ( !propTween ) {
212 if ( dataShow ) {
213 if ( "hidden" in dataShow ) {
214 hidden = dataShow.hidden;
215 }
216 } else {
217 dataShow = dataPriv.access( elem, "fxshow", { display: restoreDisplay } );
218 }
219  
220 // Store hidden/visible for toggle so `.stop().toggle()` "reverses"
221 if ( toggle ) {
222 dataShow.hidden = !hidden;
223 }
224  
225 // Show elements before animating them
226 if ( hidden ) {
227 showHide( [ elem ], true );
228 }
229  
230 /* eslint-disable no-loop-func */
231  
232 anim.done( function() {
233  
234 /* eslint-enable no-loop-func */
235  
236 // The final step of a "hide" animation is actually hiding the element
237 if ( !hidden ) {
238 showHide( [ elem ] );
239 }
240 dataPriv.remove( elem, "fxshow" );
241 for ( prop in orig ) {
242 jQuery.style( elem, prop, orig[ prop ] );
243 }
244 } );
245 }
246  
247 // Per-property setup
248 propTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim );
249 if ( !( prop in dataShow ) ) {
250 dataShow[ prop ] = propTween.start;
251 if ( hidden ) {
252 propTween.end = propTween.start;
253 propTween.start = 0;
254 }
255 }
256 }
257 }
258  
259 function propFilter( props, specialEasing ) {
260 var index, name, easing, value, hooks;
261  
262 // camelCase, specialEasing and expand cssHook pass
263 for ( index in props ) {
264 name = camelCase( index );
265 easing = specialEasing[ name ];
266 value = props[ index ];
267 if ( Array.isArray( value ) ) {
268 easing = value[ 1 ];
269 value = props[ index ] = value[ 0 ];
270 }
271  
272 if ( index !== name ) {
273 props[ name ] = value;
274 delete props[ index ];
275 }
276  
277 hooks = jQuery.cssHooks[ name ];
278 if ( hooks && "expand" in hooks ) {
279 value = hooks.expand( value );
280 delete props[ name ];
281  
282 // Not quite $.extend, this won't overwrite existing keys.
283 // Reusing 'index' because we have the correct "name"
284 for ( index in value ) {
285 if ( !( index in props ) ) {
286 props[ index ] = value[ index ];
287 specialEasing[ index ] = easing;
288 }
289 }
290 } else {
291 specialEasing[ name ] = easing;
292 }
293 }
294 }
295  
296 function Animation( elem, properties, options ) {
297 var result,
298 stopped,
299 index = 0,
300 length = Animation.prefilters.length,
301 deferred = jQuery.Deferred().always( function() {
302  
303 // Don't match elem in the :animated selector
304 delete tick.elem;
305 } ),
306 tick = function() {
307 if ( stopped ) {
308 return false;
309 }
310 var currentTime = fxNow || createFxNow(),
311 remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ),
312  
313 // Support: Android 2.3 only
314 // Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497)
315 temp = remaining / animation.duration || 0,
316 percent = 1 - temp,
317 index = 0,
318 length = animation.tweens.length;
319  
320 for ( ; index < length; index++ ) {
321 < length; index++ ) { animation.tweens[ index ].run( percent );
322 < length; index++ ) { }
323  
324 < length; index++ ) { deferred.notifyWith( elem, [ animation, percent, remaining ] );
325  
326 < length; index++ ) { // If there's more to do, yield
327 < length; index++ ) { if ( percent < 1 && length ) {
328 < length; index++ ) {< 1 && length ) { return remaining;
329 < length; index++ ) {< 1 && length ) { }
330  
331 < length; index++ ) {< 1 && length ) { // If this was an empty animation, synthesize a final progress notification
332 < length; index++ ) {< 1 && length ) { if ( !length ) {
333 < length; index++ ) {< 1 && length ) { deferred.notifyWith( elem, [ animation, 1, 0 ] );
334 < length; index++ ) {< 1 && length ) { }
335  
336 < length; index++ ) {< 1 && length ) { // Resolve the animation and report its conclusion
337 < length; index++ ) {< 1 && length ) { deferred.resolveWith( elem, [ animation ] );
338 < length; index++ ) {< 1 && length ) { return false;
339 < length; index++ ) {< 1 && length ) { },
340 < length; index++ ) {< 1 && length ) { animation = deferred.promise( {
341 < length; index++ ) {< 1 && length ) { elem: elem,
342 < length; index++ ) {< 1 && length ) { props: jQuery.extend( {}, properties ),
343 < length; index++ ) {< 1 && length ) { opts: jQuery.extend( true, {
344 < length; index++ ) {< 1 && length ) { specialEasing: {},
345 < length; index++ ) {< 1 && length ) { easing: jQuery.easing._default
346 < length; index++ ) {< 1 && length ) { }, options ),
347 < length; index++ ) {< 1 && length ) { originalProperties: properties,
348 < length; index++ ) {< 1 && length ) { originalOptions: options,
349 < length; index++ ) {< 1 && length ) { startTime: fxNow || createFxNow(),
350 < length; index++ ) {< 1 && length ) { duration: options.duration,
351 < length; index++ ) {< 1 && length ) { tweens: [],
352 < length; index++ ) {< 1 && length ) { createTween: function( prop, end ) {
353 < length; index++ ) {< 1 && length ) { var tween = jQuery.Tween( elem, animation.opts, prop, end,
354 < length; index++ ) {< 1 && length ) { animation.opts.specialEasing[ prop ] || animation.opts.easing );
355 < length; index++ ) {< 1 && length ) { animation.tweens.push( tween );
356 < length; index++ ) {< 1 && length ) { return tween;
357 < length; index++ ) {< 1 && length ) { },
358 < length; index++ ) {< 1 && length ) { stop: function( gotoEnd ) {
359 < length; index++ ) {< 1 && length ) { var index = 0,
360  
361 < length; index++ ) {< 1 && length ) { // If we are going to the end, we want to run all the tweens
362 < length; index++ ) {< 1 && length ) { // otherwise we skip this part
363 < length; index++ ) {< 1 && length ) { length = gotoEnd ? animation.tweens.length : 0;
364 < length; index++ ) {< 1 && length ) { if ( stopped ) {
365 < length; index++ ) {< 1 && length ) { return this;
366 < length; index++ ) {< 1 && length ) { }
367 < length; index++ ) {< 1 && length ) { stopped = true;
368 < length; index++ ) {< 1 && length ) { for ( ; index < length; index++ ) {
369 < length; index++ ) {< 1 && length ) {< length; index++ ) { animation.tweens[ index ].run( 1 );
370 < length; index++ ) {< 1 && length ) {< length; index++ ) { }
371  
372 < length; index++ ) {< 1 && length ) {< length; index++ ) { // Resolve when we played the last frame; otherwise, reject
373 < length; index++ ) {< 1 && length ) {< length; index++ ) { if ( gotoEnd ) {
374 < length; index++ ) {< 1 && length ) {< length; index++ ) { deferred.notifyWith( elem, [ animation, 1, 0 ] );
375 < length; index++ ) {< 1 && length ) {< length; index++ ) { deferred.resolveWith( elem, [ animation, gotoEnd ] );
376 < length; index++ ) {< 1 && length ) {< length; index++ ) { } else {
377 < length; index++ ) {< 1 && length ) {< length; index++ ) { deferred.rejectWith( elem, [ animation, gotoEnd ] );
378 < length; index++ ) {< 1 && length ) {< length; index++ ) { }
379 < length; index++ ) {< 1 && length ) {< length; index++ ) { return this;
380 < length; index++ ) {< 1 && length ) {< length; index++ ) { }
381 < length; index++ ) {< 1 && length ) {< length; index++ ) { } ),
382 < length; index++ ) {< 1 && length ) {< length; index++ ) { props = animation.props;
383  
384 < length; index++ ) {< 1 && length ) {< length; index++ ) { propFilter( props, animation.opts.specialEasing );
385  
386 < length; index++ ) {< 1 && length ) {< length; index++ ) { for ( ; index < length; index++ ) {
387 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts );
388 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { if ( result ) {
389 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { if ( isFunction( result.stop ) ) {
390 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { jQuery._queueHooks( animation.elem, animation.opts.queue ).stop =
391 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { result.stop.bind( result );
392 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { }
393 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { return result;
394 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { }
395 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { }
396  
397 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { jQuery.map( props, createTween, animation );
398  
399 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { if ( isFunction( animation.opts.start ) ) {
400 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { animation.opts.start.call( elem, animation );
401 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { }
402  
403 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { // Attach callbacks from options
404 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { animation
405 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { .progress( animation.opts.progress )
406 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { .done( animation.opts.done, animation.opts.complete )
407 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { .fail( animation.opts.fail )
408 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { .always( animation.opts.always );
409  
410 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { jQuery.fx.timer(
411 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { jQuery.extend( tick, {
412 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { elem: elem,
413 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { anim: animation,
414 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { queue: animation.opts.queue
415 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { } )
416 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { );
417  
418 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { return animation;
419 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {}
420  
421 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {jQuery.Animation = jQuery.extend( Animation, {
422  
423 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { tweeners: {
424 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { "*": [ function( prop, value ) {
425 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { var tween = this.createTween( prop, value );
426 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { adjustCSS( tween.elem, prop, rcssNum.exec( value ), tween );
427 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { return tween;
428 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { } ]
429 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { },
430  
431 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { tweener: function( props, callback ) {
432 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { if ( isFunction( props ) ) {
433 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { callback = props;
434 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { props = [ "*" ];
435 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { } else {
436 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { props = props.match( rnothtmlwhite );
437 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { }
438  
439 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { var prop,
440 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { index = 0,
441 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { length = props.length;
442  
443 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) { for ( ; index < length; index++ ) {
444 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { prop = props[ index ];
445 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { Animation.tweeners[ prop ] = Animation.tweeners[ prop ] || [];
446 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { Animation.tweeners[ prop ].unshift( callback );
447 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
448 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { },
449  
450 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { prefilters: [ defaultPrefilter ],
451  
452 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { prefilter: function( callback, prepend ) {
453 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( prepend ) {
454 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { Animation.prefilters.unshift( callback );
455 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { } else {
456 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { Animation.prefilters.push( callback );
457 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
458 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
459 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {} );
460  
461 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {jQuery.speed = function( speed, easing, fn ) {
462 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : {
463 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { complete: fn || !fn && easing ||
464 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { isFunction( speed ) && speed,
465 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { duration: speed,
466 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { easing: fn && easing || easing && !isFunction( easing ) && easing
467 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { };
468  
469 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Go to the end state if fx are off
470 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( jQuery.fx.off ) {
471 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { opt.duration = 0;
472  
473 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { } else {
474 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( typeof opt.duration !== "number" ) {
475 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( opt.duration in jQuery.fx.speeds ) {
476 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { opt.duration = jQuery.fx.speeds[ opt.duration ];
477  
478 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { } else {
479 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { opt.duration = jQuery.fx.speeds._default;
480 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
481 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
482 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
483  
484 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Normalize opt.queue - true/undefined/null -> "fx"
485 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( opt.queue == null || opt.queue === true ) {
486 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { opt.queue = "fx";
487 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
488  
489 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Queueing
490 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { opt.old = opt.complete;
491  
492 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { opt.complete = function() {
493 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( isFunction( opt.old ) ) {
494 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { opt.old.call( this );
495 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
496  
497 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( opt.queue ) {
498 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { jQuery.dequeue( this, opt.queue );
499 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
500 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { };
501  
502 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { return opt;
503 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {};
504  
505 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {jQuery.fn.extend( {
506 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { fadeTo: function( speed, to, easing, callback ) {
507  
508 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Show any hidden elements after setting opacity to 0
509 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { return this.filter( isHiddenWithinTree ).css( "opacity", 0 ).show()
510  
511 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Animate to the value specified
512 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { .end().animate( { opacity: to }, speed, easing, callback );
513 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { },
514 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { animate: function( prop, speed, easing, callback ) {
515 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { var empty = jQuery.isEmptyObject( prop ),
516 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { optall = jQuery.speed( speed, easing, callback ),
517 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { doAnimation = function() {
518  
519 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Operate on a copy of prop so per-property easing won't be lost
520 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { var anim = Animation( this, jQuery.extend( {}, prop ), optall );
521  
522 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Empty animations, or finishing resolves immediately
523 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( empty || dataPriv.get( this, "finish" ) ) {
524 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { anim.stop( true );
525 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
526 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { };
527 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { doAnimation.finish = doAnimation;
528  
529 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { return empty || optall.queue === false ?
530 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { this.each( doAnimation ) :
531 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { this.queue( optall.queue, doAnimation );
532 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { },
533 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { stop: function( type, clearQueue, gotoEnd ) {
534 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { var stopQueue = function( hooks ) {
535 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { var stop = hooks.stop;
536 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { delete hooks.stop;
537 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { stop( gotoEnd );
538 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { };
539  
540 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( typeof type !== "string" ) {
541 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { gotoEnd = clearQueue;
542 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { clearQueue = type;
543 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { type = undefined;
544 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
545 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( clearQueue && type !== false ) {
546 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { this.queue( type || "fx", [] );
547 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
548  
549 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { return this.each( function() {
550 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { var dequeue = true,
551 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { index = type != null && type + "queueHooks",
552 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { timers = jQuery.timers,
553 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { data = dataPriv.get( this );
554  
555 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( index ) {
556 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( data[ index ] && data[ index ].stop ) {
557 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { stopQueue( data[ index ] );
558 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
559 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { } else {
560 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { for ( index in data ) {
561 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) {
562 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { stopQueue( data[ index ] );
563 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
564 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
565 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
566  
567 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { for ( index = timers.length; index--; ) {
568 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( timers[ index ].elem === this &&
569 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { ( type == null || timers[ index ].queue === type ) ) {
570  
571 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { timers[ index ].anim.stop( gotoEnd );
572 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { dequeue = false;
573 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { timers.splice( index, 1 );
574 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
575 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
576  
577 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Start the next in the queue if the last step wasn't forced.
578 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Timers currently will call their complete callbacks, which
579 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // will dequeue but only if they were gotoEnd.
580 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( dequeue || !gotoEnd ) {
581 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { jQuery.dequeue( this, type );
582 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
583 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { } );
584 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { },
585 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { finish: function( type ) {
586 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( type !== false ) {
587 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { type = type || "fx";
588 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
589 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { return this.each( function() {
590 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { var index,
591 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { data = dataPriv.get( this ),
592 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { queue = data[ type + "queue" ],
593 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { hooks = data[ type + "queueHooks" ],
594 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { timers = jQuery.timers,
595 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { length = queue ? queue.length : 0;
596  
597 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Enable finishing flag on private data
598 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { data.finish = true;
599  
600 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Empty the queue first
601 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { jQuery.queue( this, type, [] );
602  
603 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( hooks && hooks.stop ) {
604 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { hooks.stop.call( this, true );
605 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
606  
607 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Look for any active animations, and finish them
608 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { for ( index = timers.length; index--; ) {
609 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( timers[ index ].elem === this && timers[ index ].queue === type ) {
610 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { timers[ index ].anim.stop( true );
611 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { timers.splice( index, 1 );
612 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
613 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
614  
615 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Look for any animations in the old queue and finish them
616 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { for ( index = 0; index < length; index++ ) {
617 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { if ( queue[ index ] && queue[ index ].finish ) {
618 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { queue[ index ].finish.call( this );
619 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
620 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
621  
622 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { // Turn off finishing flag
623 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { delete data.finish;
624 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { } );
625 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { }
626 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {} );
627  
628 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {jQuery.each( [ "toggle", "show", "hide" ], function( i, name ) {
629 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { var cssFn = jQuery.fn[ name ];
630 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { jQuery.fn[ name ] = function( speed, easing, callback ) {
631 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { return speed == null || typeof speed === "boolean" ?
632 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { cssFn.apply( this, arguments ) :
633 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { this.animate( genFx( name, true ), speed, easing, callback );
634 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { };
635 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {} );
636  
637 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {// Generate shortcuts for custom animations
638 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {jQuery.each( {
639 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { slideDown: genFx( "show" ),
640 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { slideUp: genFx( "hide" ),
641 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { slideToggle: genFx( "toggle" ),
642 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { fadeIn: { opacity: "show" },
643 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { fadeOut: { opacity: "hide" },
644 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { fadeToggle: { opacity: "toggle" }
645 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {}, function( name, props ) {
646 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { jQuery.fn[ name ] = function( speed, easing, callback ) {
647 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { return this.animate( props, speed, easing, callback );
648 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { };
649 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {} );
650  
651 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {jQuery.timers = [];
652 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {jQuery.fx.tick = function() {
653 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { var timer,
654 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { i = 0,
655 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { timers = jQuery.timers;
656  
657 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { fxNow = Date.now();
658  
659 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) { for ( ; i < timers.length; i++ ) {
660 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { timer = timers[ i ];
661  
662 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { // Run the timer and safely remove it when done (allowing for external removal)
663 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { if ( !timer() && timers[ i ] === timer ) {
664 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { timers.splice( i--, 1 );
665 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { }
666 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { }
667  
668 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { if ( !timers.length ) {
669 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { jQuery.fx.stop();
670 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { }
671 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { fxNow = undefined;
672 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) {};
673  
674 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) {jQuery.fx.timer = function( timer ) {
675 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { jQuery.timers.push( timer );
676 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { jQuery.fx.start();
677 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) {};
678  
679 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) {jQuery.fx.interval = 13;
680 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) {jQuery.fx.start = function() {
681 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { if ( inProgress ) {
682 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { return;
683 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { }
684  
685 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { inProgress = true;
686 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { schedule();
687 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) {};
688  
689 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) {jQuery.fx.stop = function() {
690 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { inProgress = null;
691 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) {};
692  
693 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) {jQuery.fx.speeds = {
694 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { slow: 600,
695 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { fast: 200,
696  
697 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { // Default speed
698 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) { _default: 400
699 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) {};
700  
701 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) {return jQuery;
702 < length; index++ ) {< 1 && length ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< length; index++ ) {< timers.length; i++ ) {} );