PluginProbe
Jetpack – WP Security, Backup, Speed, & Growth / 8.1.1
Jetpack – WP Security, Backup, Speed, & Growth v8.1.1
12.0.3 12.1.3 12.2.3 12.3.2 12.4.2 12.5.2 12.6.4 12.7.3 12.8.3 12.9.5 13.0.2 13.1.5 13.2.4 13.3.3 13.4.5 13.5.2 13.6.2 13.7.2 13.8.3 13.9.2 14.0.1 14.1.1 14.2.2 14.3.1 14.4.2 All 500 releases
jetpack / _inc / jquery.spin.js
jquery.spin.js
105 lines 3.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /**
2 * Copyright (c) 2011-2013 Felix Gnass
3 * Licensed under the MIT license
4 */
5
6 /*
7
8 Basic Usage:
9 ============
10
11 $('#el').spin(); // Creates a default Spinner using the text color of #el.
12 $('#el').spin({ ... }); // Creates a Spinner using the provided options.
13
14 $('#el').spin(false); // Stops and removes the spinner.
15
16 Using Presets:
17 ==============
18
19 $('#el').spin('small'); // Creates a 'small' Spinner using the text color of #el.
20 $('#el').spin('large', '#fff'); // Creates a 'large' white Spinner.
21
22 Adding a custom preset:
23 =======================
24
25 $.fn.spin.presets.flower = {
26 lines: 9
27 length: 10
28 width: 20
29 radius: 0
30 }
31
32 $('#el').spin('flower', 'red');
33
34 */
35
36 (function(factory) {
37
38 if (typeof exports == 'object') {
39 // CommonJS
40 factory(require('jquery'), require('spin'))
41 }
42 else if (typeof define == 'function' && define.amd) {
43 // AMD, register as anonymous module
44 define(['jquery', 'spin'], factory)
45 }
46 else {
47 // Browser globals
48 if (!window.Spinner) throw new Error('Spin.js not present')
49 factory(window.jQuery, window.Spinner)
50 }
51
52 }(function($, Spinner) {
53
54 $.fn.spin = function(opts, color) {
55
56 return this.each(function() {
57 var $this = $(this),
58 data = $this.data();
59
60 if (data.spinner) {
61 data.spinner.stop();
62 delete data.spinner;
63 }
64 if (opts !== false) {
65 opts = $.extend(
66 { color: color || $this.css('color') },
67 $.fn.spin.presets[opts] || opts
68 )
69 // Begin WordPress Additions
70 // To use opts.right, you need to have specified a length, width, and radius.
71 if ( typeof opts.right !== 'undefined' && typeof opts.length !== 'undefined'
72 && typeof opts.width !== 'undefined' && typeof opts.radius !== 'undefined' ) {
73 var pad = $this.css( 'padding-left' );
74 pad = ( typeof pad === 'undefined' ) ? 0 : parseInt( pad, 10 );
75 opts.left = $this.outerWidth() - ( 2 * ( opts.length + opts.width + opts.radius ) ) - pad - opts.right;
76 delete opts.right;
77 }
78 // End WordPress Additions
79 data.spinner = new Spinner(opts).spin(this)
80 }
81 })
82 }
83
84 $.fn.spin.presets = {
85 tiny: { lines: 8, length: 2, width: 2, radius: 3 },
86 small: { lines: 8, length: 4, width: 3, radius: 5 },
87 large: { lines: 10, length: 8, width: 4, radius: 8 }
88 }
89
90 }));
91
92 // Jetpack Presets Overrides:
93 (function($){
94 $.fn.spin.presets.wp = { trail: 60, speed: 1.3 };
95 $.fn.spin.presets.small = $.extend( { lines: 8, length: 2, width: 2, radius: 3 }, $.fn.spin.presets.wp );
96 $.fn.spin.presets.medium = $.extend( { lines: 8, length: 4, width: 3, radius: 5 }, $.fn.spin.presets.wp );
97 $.fn.spin.presets.large = $.extend( { lines: 10, length: 6, width: 4, radius: 7 }, $.fn.spin.presets.wp );
98 $.fn.spin.presets['small-left'] = $.extend( { left: 5 }, $.fn.spin.presets.small );
99 $.fn.spin.presets['small-right'] = $.extend( { right: 5 }, $.fn.spin.presets.small );
100 $.fn.spin.presets['medium-left'] = $.extend( { left: 5 }, $.fn.spin.presets.medium );
101 $.fn.spin.presets['medium-right'] = $.extend( { right: 5 }, $.fn.spin.presets.medium );
102 $.fn.spin.presets['large-left'] = $.extend( { left: 5 }, $.fn.spin.presets.large );
103 $.fn.spin.presets['large-right'] = $.extend( { right: 5 }, $.fn.spin.presets.large );
104 })(jQuery);
105