| 3702 | } |
| 3703 | |
| 3704 | function standardAnimationOption( option ) { |
| 3705 | // Valid standard speeds (nothing, number, named speed) |
| 3706 | if ( !option || typeof option === "number" || $.fx.speeds[ option ] ) { |
| 3707 | return true; |
| 3708 | } |
| 3709 | |
| 3710 | // Invalid strings - treat as "normal" speed |
| 3711 | if ( typeof option === "string" && !$.effects.effect[ option ] ) { |
| 3712 | return true; |
| 3713 | } |
| 3714 | |
| 3715 | // Complete callback |
| 3716 | if ( $.isFunction( option ) ) { |
| 3717 | return true; |
| 3718 | } |
| 3719 | |
| 3720 | // Options hash (but not naming an effect) |
| 3721 | if ( typeof option === "object" && !option.effect ) { |
| 3722 | return true; |
| 3723 | } |
| 3724 | |
| 3725 | // Didn't match any standard API |
| 3726 | return false; |
| 3727 | } |
| 3728 | |
| 3729 | $.fn.extend({ |
| 3730 | effect: function( /* effect, options, speed, callback */ ) { |