PluginProbe ʕ •ᴥ•ʔ
Strong Testimonials / 2.33
Strong Testimonials v2.33
3.3.6 3.3.5 3.3.4 3.3.3 3.3.2 3.3.1 trunk 1.0.1 2.30.9 2.31.10 2.32 2.32.1 2.32.2 2.32.3 2.32.4 2.33 2.34 2.35 2.36 2.37 2.38 2.38.1 2.39 2.39.1 2.39.2 2.39.3 2.40.0 2.40.1 2.40.2 2.40.3 2.40.4 2.40.5 2.40.6 2.40.7 2.41.0 2.41.1 2.50.0 2.50.1 2.50.2 2.50.3 2.50.4 2.51.0 2.51.1 2.51.2 2.51.3 2.51.4 2.51.5 2.51.6 2.51.7 2.51.8 2.51.9 3.0.0 3.0.1 3.0.2 3.0.3 3.1.0 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 3.1.19 3.1.2 3.1.20 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.10 3.2.11 3.2.12 3.2.13 3.2.14 3.2.15 3.2.16 3.2.17 3.2.18 3.2.19 3.2.2 3.2.20 3.2.21 3.2.22 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.3.0
strong-testimonials / admin / js / custom-spinner.js
strong-testimonials / admin / js Last commit date
lib 8 years ago addon-licenses.js 9 years ago admin-compat.js 8 years ago admin-fields.js 7 years ago admin-form.js 8 years ago admin-global.js 8 years ago admin-order.js 9 years ago admin.js 8 years ago custom-spinner.js 8 years ago help.js 8 years ago rating-edit.js 9 years ago view-category-filter.js 9 years ago views.js 7 years ago
custom-spinner.js
82 lines
1 /**
2 * Custom Number Spinner
3 *
4 * Courtesy of
5 * http://www.jqueryscript.net/form/Custom-Number-InputSpinner-Plugin-jQuery-number.html
6 * with help from
7 * https://stackoverflow.com/a/7343013/51600
8 */
9 ;(function ($) {
10 $.fn.number = function (customOptions) {
11 function round(value, precision) {
12 var multiplier = Math.pow(10, precision || 0);
13 return Math.round(value * multiplier) / multiplier;
14 }
15
16 var options = {
17 'containerClass': 'number-style noselect',
18 'minus': 'number-minus',
19 'plus': 'number-plus',
20 'containerTag': 'div',
21 'btnTag': 'span'
22 }
23 options = $.extend(true, options, customOptions)
24
25 var input = this
26 input.wrap('<' + options.containerTag + ' class="' + options.containerClass + '">')
27
28 var wrapper = input.parent()
29 wrapper.prepend('<' + options.btnTag + ' class="' + options.minus + '"></' + options.btnTag + '>')
30 wrapper.append('<' + options.btnTag + ' class="' + options.plus + '"></' + options.btnTag + '>')
31
32 var minus = wrapper.find('.' + options.minus)
33 var plus = wrapper.find('.' + options.plus)
34
35 var min = round(input.attr('min'),1)
36 var max = round(input.attr('max'),1)
37 var step = 1
38 if(input.attr('step')){
39 step = +round(input.attr('step'),1)
40 }
41
42 if (+input.val() <= +min) {
43 minus.addClass('disabled')
44 }
45 if (+input.val() >= +max) {
46 plus.addClass('disabled')
47 }
48
49 minus.click(function () {
50 var input = $(this).parent().find('input')
51 var value = +round(input.val(),1)
52 if (+value > +min) {
53 input.val(round(+value - step,1))
54 if (+input.val() === +min) {
55 input.prev('.' + options.minus).addClass('disabled')
56 }
57 if (input.next('.' + options.plus).hasClass('disabled')) {
58 input.next('.' + options.plus).removeClass('disabled')
59 }
60 } else if (!min) {
61 input.val(round(+value - step,1))
62 }
63 })
64
65 plus.click(function () {
66 var input = $(this).parent().find('input')
67 var value = +round(input.val(),2)
68 if (+value < +max) {
69 input.val(round(+value + step,1))
70 if (+input.val() === +max) {
71 input.next('.' + options.plus).addClass('disabled')
72 }
73 if (input.prev('.' + options.minus).hasClass('disabled')) {
74 input.prev('.' + options.minus).removeClass('disabled')
75 }
76 } else if (!max) {
77 input.val(round(+value + step,1))
78 }
79 })
80 }
81 })(jQuery)
82