jQuery рдХреЗ рдХрд╕реНрдЯрдо рд░реЗрдбрд┐рдпреЛ рдФрд░ рдЪреЗрдХрдмреЙрдХреНрд╕

рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рдпрд╣ рд╕рдм рдпрд╛ рддреЛ рдЦрд░рд╛рдм рдЦреЛрдЬ рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг рд╢реБрд░реВ рд╣реБрдЖ, рдпрд╛ рдЬреЛ рдореБрдЭреЗ рдЪрд╛рд╣рд┐рдП рдерд╛ рдЙрд╕рдХрд╛ рдЕрдзреВрд░рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиред
рдФрд░ рдореБрдЭреЗ рдЬреЛ рдЪрд╛рд╣рд┐рдП рдерд╛ рд╡рд╣ рдерд╛ рдХрд╕реНрдЯрдо рд░реЗрдбрд┐рдпреЛ рдФрд░ рдЪреЗрдХрдмреЙрдХреНрд╕ рдЬреЛ рдореИрдВ рдЕрдкрдиреЗ рджреИрдирд┐рдХ рдХрд╛рдо рдореЗрдВ рд▓реЗрдЖрдЙрдЯ рдХреЗ рджреМрд░рд╛рди рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рдерд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЙрдиреНрд╣реЗрдВ IE6 + рдФрд░ рд╕рднреА рдкреНрд░рдореБрдЦ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рддрддреНрд╡реЛрдВ рдХреЛ рд▓реЗрдмрд▓ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рдЬрд╡рд╛рдм рджреЗрдирд╛ рдерд╛ред рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдкреГрд╖реНрда 1 рдкрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рддрдирд╛ рдЖрдк рд╡рд┐рднрд┐рдиреНрди рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рд╣рд╛рдБ, рдХрднреА-рдХрднреА рдРрд╕реЗ рдореАрдЧреЛ рдбрд┐рдЬрд╛рдЗрди рд╣реЛрддреЗ рд╣реИрдВ)ред
рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рдЬреЗрдПрд╕ рдкрд░ рдЪреЗрдХрдмреЙрдХреНрд╕ рдФрд░ рд░реЗрдбрд┐рдпреЛ рдмреИрдЯрди рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдорд┐рд▓рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рд▓реЗрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдФрд░ рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ jQuery рдкреНрд▓рдЧрдЗрди рд▓рд┐рдЦреЗрдВ рдЬреЛ рдореЗрд░реА рдЬрд░реВрд░рддреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░реЗрдЧрд╛ред

рддрддреНрд╡реЛрдВ рдХрд╛ рдкреНрд░рдХрд╛рд░ 4 рд░рд╛рдЬреНрдпреЛрдВ рдХреЗ рд╕рд╛рде рд╕реНрдкреНрд░рд╛рдЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛:
- рдирд┐рд╖реНрдХреНрд░рд┐рдп рджреГрд╢реНрдп;
- рдирд┐рд╖реНрдХреНрд░рд┐рдп рдорд╛рдЙрд╕ рджрдмрд╛рдпрд╛;
- рд╕рдХреНрд░рд┐рдп;
- рд╕рдХреНрд░рд┐рдп рдорд╛рдЙрд╕ рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЫрд╡рд┐

рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рдЖрдкрдХреЛ рд╕реНрдкреНрд░рд╛рдЗрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕рдореЗрдВ рдЪрд┐рддреНрд░реЛрдВ рдХреЗ рдКрд░реНрдзреНрд╡рд╛рдзрд░ рдорд┐рд╢реНрд░рдг рдХреЛ рдЬрд╛рдирдирд╛ рд╣реЛрдЧрд╛ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рддрддреНрд╡ рдХреА рдКрдВрдЪрд╛рдИ рдХреЛ рдкреНрд▓рдЧрдЗрди рдореЗрдВ рдкрд╛рд╕ рдХрд░реЗрдВ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕реНрдкреНрд░рд╛рдЗрдЯ рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░реЗрдВ рддрд╛рдХрд┐ рд╡реЗ рд╕рдорд╛рди рдКрдВрдЪрд╛рдИ рд╡рд╛рд▓реЗ рд╕реНрдерд╛рди рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░ рд▓реЗрдВред
рдпрд╣ рднреА рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдЬрдм рдкреНрд▓рдЧрдЗрди рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдПрдХ рд╡рд░реНрдЧ рдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдореИрдВ рддрддреНрд╡ рдХреЛ рд╕реНрдЯрд╛рдЗрд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред
рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ рдХрд┐ рдХреБрдЫ рдФрд░ рд╢рд░реНрддреЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдмрд┐рдирд╛ рдкреНрд▓рдЧрдЗрди рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдпрд╣ рддрддреНрд╡реЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ (рд╕рдХреНрд░рд┐рдп / рдирд┐рд╖реНрдХреНрд░рд┐рдп) рдФрд░ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдирд┐рд░реНрдорд┐рдд рддрддреНрд╡реЛрдВ рдХреЗ рд╕реНрдЯрд╛рдЗрд▓рд╛рдЗрдЬреЗрд╢рди рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИред

рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдкреВрд░рд╛ рдкреНрд▓рдЧрдЗрди рдХреЛрдб рджреВрдВрдЧрд╛:

(function ($) { $.CustomData = { elements:$() }; $.fn.extend({ Custom:function (options) { var elements = this; $.CustomData.elements = $.CustomData.elements.add(elements); /*  */ var defaults = { customStyleClass:"checkbox", customHeight:"16" }; /*       */ options = $.extend(defaults, options); /*       */ var pushed = function () { var element = $(this).children('input'); if (element.is(':checked')) { /*  */ $(this).css('backgroundPosition', "0px -" + options.customHeight * 3 + "px"); } else { $(this).css('backgroundPosition', "0px -" + options.customHeight + "px"); } }; /*     ,    (radio)*/ var check = function () { var element = $(this).children('input'); if (element.is(':checked') && element.attr('type') === 'checkbox') {/* */ $(this).css('backgroundPosition', '0px 0px'); $(this).children('input').attr('checked', false).change(); /*         */ } else { if (element.attr('type') === 'checkbox') {/* */ $(this).css('backgroundPosition', "0px -" + options.customHeight * 2 + "px"); } else { /**/ $(this).css('backgroundPosition', "0px -" + options.customHeight * 2 + "px"); $('input[name=' + element.attr('name') + ']').not(element).parent().css('backgroundPosition', '0px 0px'); } $(this).children('input').attr('checked', 'checked').change(); } }; /*        */ var update = function () { $.CustomData.elements.each(function () { /*       */ if ($(this).is(':checked')) { $(this).parent().css('backgroundPosition', "0px -" + $(this).attr('data-height') * 2 + "px"); } else { $(this).parent().css('backgroundPosition', "0px 0px"); } }); }; /*    disabled/enabled */ var refresh = function () { if (!$(this).prop('disabled')) { $(this).parent().mousedown(pushed); $(this).parent().mouseup(check); $(this).parent().removeClass('disabled'); } else { $(this).parent().addClass('disabled'); $(this).parent().unbind('mousedown', pushed); $(this).parent().unbind('mouseup', check); } }; return this.each(function () { if ($(this).attr('data-init') != '1') { $(this).attr('data-init', '1'); $(this).attr('data-height', options.customHeight); /*  <span></span>*/ $(this).wrap('<span/>'); /*     */ var span = $(this).parent().addClass(options.customStyleClass); if ($(this).is(':checked') === true) { /*    */ span.css('backgroundPosition', "0px -" + (options.customHeight * 2) + "px"); } /*              */ $(this).bind('change', update); $(this).bind('custom.refresh', refresh); if (!$(this).prop('disabled')) { /*   span*/ span.mousedown(pushed); span.mouseup(check); } else { /*    */ span.addClass('disabled'); } } }); } }); })(jQuery); 

рдореИрдВрдиреЗ рдкреНрд▓рдЧрдЗрди рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХреА, рдФрд░ рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

 (function ($) { $.fn.extend({ Custom:function (options) { /*  */ var defaults = { customStyleClass:"checkbox", customHeight:"16" }; /*       */ options = $.extend(defaults, options); }; return this.each(function () { }); } }); 

рдЖрдк рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - "рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ jQuery рдРрдб-рдСрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред"

рдЪрд▓реЛ рдЕрдВрдд рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ:

 return this.each(function () { if ($(this).attr('data-init') != '1') { $(this).attr('data-init', '1'); $(this).attr('data-height', options.customHeight); /*  <span></span>*/ $(this).wrap('<span/>'); /*     */ var span = $(this).parent().addClass(options.customStyleClass); if ($(this).is(':checked') === true) { /*    */ span.css('backgroundPosition', "0px -" + (options.customHeight * 2) + "px"); } /*              */ $(this).bind('change', update); $(this).bind('custom.refresh', refresh); if (!$(this).prop('disabled')) { /*   span*/ span.mousedown(pushed); span.mouseup(check); } else { /*    */ span.addClass('disabled'); } } }); 

рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдХреЛрдб рдореЗрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд╕рдм рдХреБрдЫ рд╡рд░реНрдгрд┐рдд рд╣реИ, рдореИрдВ рдХреЗрд╡рд▓ рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реВрдВ
 $(this).attr('data-init', '1'); 

рдореИрдВ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рддрддреНрд╡ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╢реИрд▓реАрдмрджреНрдз рд╣реИ рдпрд╛ рдирд╣реАрдВ (рдмреЗрд╢рдХ, рдЖрдк рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреА рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдРрд╕реА рд╡рд┐рдзрд┐ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ)ред

 $(this).attr('data-height', options.customHeight); 

рдпрд╣рд╛рдБ рдореИрдВ рддрддреНрд╡ рдХреА рдКрдБрдЪрд╛рдИ рдХреЛ рдмрдЪрд╛рддрд╛ рд╣реВрдБ рдореЗрд░реЗ рдкрд╛рд╕ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реНрдкреНрд░рд╛рдЗрдЯреНрд╕ рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рднреА рддрддреНрд╡ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

 $(this).bind('custom.refresh', refresh); 

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рддрд░реАрдХрд╛, рдХрд╕реНрдЯрдо рдИрд╡реЗрдВрдЯ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ "custom.refresh" рддрд╛рдЬрд╝рд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдХреЙрд▓ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рддрддреНрд╡ рдХреА рд╕реНрдерд┐рддрд┐ рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╣реЛ рдЧрдИ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рддрддреНрд╡реЛрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдмрджрд▓рдиреЗ рдФрд░ рдЗрд╕рдореЗрдВ рд╕реЗ рд╕рднреА рдШрдЯрдирд╛рдУрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
 $('#radio3').removeAttr('disabled').trigger('custom.refresh'); 

рддрддреНрд╡ рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╣реЛ рдЧрдпрд╛ рдФрд░ рдШрдЯрдирд╛ "custom.refresh" рд╣реБрдИ рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг рддрд╛рдЬрд╝рд╛ рдлрд╝рдВрдХреНрд╢рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдЗрд╕ рднрд╛рдЧ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд╛рд░реНрдп рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИрдВ:
 Custom:function (options) {...}; 

рдзрдХреЗрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рдХрд╛рд░реНрдп - рд╕рдХреНрд░рд┐рдп рдФрд░ рдирд┐рд╖реНрдХреНрд░рд┐рдп рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП рд╕реНрдкреНрд░рд╛рдЗрдЯ рдореЗрдВ рдСрдлрд╕реЗрдЯ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ:

 var pushed = function () { var element = $(this).children('input'); if (element.is(':checked')) { /*  */ $(this).css('backgroundPosition', "0px -" + options.customHeight * 3 + "px"); } else { $(this).css('backgroundPosition', "0px -" + options.customHeight + "px"); } }; 

рд╕рдорд╛рд░реЛрд╣ рдХреА рдЬрд╛рдВрдЪ:

 /*     ,     (radio)*/ var check = function () { var element = $(this).children('input'); if (element.is(':checked') && element.attr('type') === 'checkbox') {/* */ $(this).css('backgroundPosition', '0px 0px'); $(this).children('input').attr('checked', false).change(); /*         */ } else { if (element.attr('type') === 'checkbox') {/* */ $(this).css('backgroundPosition', "0px -" + options.customHeight * 2 + "px"); } else { /**/ $(this).css('backgroundPosition', "0px -" + options.customHeight * 2 + "px"); $('input[name=' + element.attr('name') + ']').not(element).parent().css('backgroundPosition', '0px 0px'); } $(this).children('input').attr('checked', 'checked').change(); } }; 

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреЛрдб рдореЗрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рд╕реЗ рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рд╣реИ, рдореИрдВ рдХреЗрд╡рд▓ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЬреЛрдбрд╝реВрдВрдЧрд╛
 $(this).children('input').attr('checked', false).change(); 

.attr ('рдЪреЗрдХ рдХрд┐рдпрд╛ рд╣реБрдЖ', рдЧрд▓рдд) .change () - рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдкрд░рд┐рд╡рд░реНрддрди () рдИрд╡реЗрдВрдЯ рдлрд╝рд╛рдпрд░ рд╣реЛ рдЬрд╛рдП рдФрд░ рдЬрд╛рдБрдЪреА рдЧрдИ рд╡рд┐рд╢реЗрд╖рддрд╛ рдмрджрд▓ рдЬрд╛рдПред рд╕реНрдЯреИрдХрдУрд╡рд░рдлреНрд▓реЛ рдкрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рджреЗрдЦрдирд╛ рдкрдбрд╝рд╛ред

рдЕрджреНрдпрддрди рдХрд╛рд░реНрдп:

 /*     */ var update = function () { $.CustomData.elements.each(function () { /*       */ if ($(this).is(':checked')) { $(this).parent().css('backgroundPosition', "0px -" + $(this).attr('data-height') * 2 + "px"); } else { $(this).parent().css('backgroundPosition', "0px 0px"); } }); }; 

рдпрд╣ рдПрдХ рдЪрд░ рдХреЗ рдмрд┐рдирд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛, рдЬрд╣рд╛рдВ рд╕рднреА рддрддреНрд╡реЛрдВ рдХреЛ рд╕рд╣реЗрдЬрдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛, рдЬрд┐рд╕ рдкрд░ рдкреНрд▓рдЧрдЗрди рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ ($ред CustomData.elements)ред рдпрд╣ $ .fn.extend ({...}) рдХреЗ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╣реИ

 $.CustomData = { elements:$() }; 


рдФрд░ рдкреНрд▓рдЧрдЗрди рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╕рдордп, рддрддреНрд╡реЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рдЗрд╕рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ

 var elements = this; $.CustomData.elements = $.CustomData.elements.add(elements); 


рдФрд░ рдЕрдВрддрд┐рдо рдлрд╝рдВрдХреНрд╢рди рдЬреЛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдЬрдм рддрд╛рдЬрд╝рд╛ рддрддреНрд╡ рд░рд╛рдЬреНрдп рдмрджрд▓рддрд╛ рд╣реИ:

 /*    disabled/enabled */ var refresh = function () { if (!$(this).prop('disabled')) { $(this).parent().mousedown(pushed); $(this).parent().mouseup(check); $(this).parent().removeClass('disabled'); } else { $(this).parent().addClass('disabled'); $(this).parent().unbind('mousedown', pushed); $(this).parent().unbind('mouseup', check); } }; 


рд╕рдордЭрдиреЗ рдореЗрдВ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ, рдмрд╕ рд╣реИрдВрдбрд▓рд░реНрд╕ рдХреЛ рд╣рдЯрд╛ рджреЗрдВ рдпрд╛ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдЬреЛрдбрд╝реЗрдВ рдФрд░ "рдЕрдХреНрд╖рдо" рд╡рд░реНрдЧ рдХреЛ рдЬреЛрдбрд╝реЗрдВ / рд╣рдЯрд╛ рджреЗрдВ, рдЬрд┐рд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдк рддрддреНрд╡ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЖрдорддреМрд░ рдкрд░ рдкрд╛рд░рджрд░реНрд╢рд┐рддрд╛ рдмрджрд▓ рдЬрд╛рддреА рд╣реИ)ред

рд░реЗрдбрд┐рдпреЛ рдмреИрдЯрди рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рд╛рде рдЙрджрд╛рд╣рд░рдг рд╡рд░реНрдЧ:
 .radio { display:block; height: 25px; width: 19px; overflow:hidden; background: url("radio.png") no-repeat 0 0 transparent; position:relative; } .radio.disabled{ opacity:0.5; filter:Alpha(opacity="50"); } .radio input{ position:absolute; right:-400px; top:0px; } 


рдХреЙрд▓ рдкреНрд▓рдЧрдЗрди:
 $("input[type='radio']").Custom({ customStyleClass:'radio', customHeight:'25' }); 


рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдореЗрд░реЗ рдЬреИрд╕реЗ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЛ рдореЗрд░рд╛ рдкрд╣рд▓рд╛ jQuery рдкреНрд▓рдЧ рдЗрди рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред

рдпрд╣ рд╡рд╣ рд╕рдм рд╣реИ рдЬреЛ рдореИрдВ рдЕрдкрдиреА рдЬрд╝рд░реВрд░рдд рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рдЦрд░рд╛рдм рдЦреЛрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдореИрдВ jQuery рд╕реАрдЦрдиреЗ рдФрд░ рдкреНрд▓рдЧрдЗрди рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдЙрдирдХреА рдорджрдж рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреЗ рдЖрджрдореА рдЖрдВрджреНрд░реЗрдИ рдХреЛ рдзрдиреНрдпрд╡рд╛рдж рджреЗрддрд╛ рд╣реВрдВ, рд╕рд╛рде рд╣реА рдЗрд╕ рдкреНрд▓рдЧрдЗрди рдХреЗ рдбреЗрд╡рд▓рдкрд░ http://ryanfait.com/resources/custom-checkboxes-and-radio-buttons/ js рдкрд░ рд╣реИ рдФрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реБрдЖ рд╣реИ рдореБрдЭреЗ рдЕрдкрдиреА рдЬрд░реВрд░рдд рдХреЗ рдЪрд┐рдкреНрд╕ рдХреЗ рд╕рд╛рде рдореБрдЭреЗ рдЦреБрдж рдХреЛ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рджрд┐рдпрд╛ред рдореБрдЭреЗ рдкреНрд▓реИрдЯрд┐рдирдо рдХреЗ рдХрд╛рдо рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдФрд░ рдЖрд▓реЛрдЪрдирд╛рдУрдВ рдкрд░ рдЦреБрд╢реА рд╣реЛрдЧреАред

рдкреНрд▓рдЧрдЗрди рдпрд╣рд╛рдБ рд╣реИ https://github.com/n0r8/Custom-radio-checkbox

Source: https://habr.com/ru/post/In142182/


All Articles