27 lines
1.1 KiB
JavaScript
27 lines
1.1 KiB
JavaScript
(function($) {
|
|
$.fn.spinner = function() {
|
|
this.each(function() {
|
|
var el = $(this);
|
|
|
|
// add elements
|
|
el.wrap('<span id="'+$(this).attr("id")+'" class="spinner"></span>');
|
|
el.removeAttr("id");
|
|
el.before('<span class="sub">-</span>');
|
|
el.after('<span class="add">+</span>');
|
|
|
|
// substract
|
|
el.parent().on('click', '.sub', function () {
|
|
if (el.val() > parseInt(el.attr('min')))
|
|
el.val( function(i, oldval) { return --oldval; });
|
|
el.trigger("change");
|
|
});
|
|
|
|
// increment
|
|
el.parent().on('click', '.add', function () {
|
|
if (el.val() < parseInt(el.attr('max')))
|
|
el.val( function(i, oldval) { return ++oldval; });
|
|
el.trigger("change");
|
|
});
|
|
});
|
|
};
|
|
})(jQuery); |