¿Hay alguna forma de acortar este código? Estoy codificando con jQuery.
<div class="js-check-container" style="padding:0 0 0 19px;"> <img src="/assets/admin/css/img/icon-check.svg" style="display:none;" class="js-checked"> <img src="/assets/admin/css/img/icon-form-multi-choice-off.svg" class="js-unchecked"> </div> $('.js-unchecked').click(function() { $(this).slideUp(0); $(this).parent('.js-check-container').find('.js-checked').slideDown(0); }) $('.js-checked').click(function() { $(this).slideUp(0); $(this).parent('.js-check-container').find('.js-unchecked').slideDown(0); })Puede agregar el mismo controlador a ambos y, dentro del controlador, verificar si el elemento en el que se hizo clic tiene la clase js-checked o js-unchecked , a partir de la cual puede generar la cadena para pasar a .find .
$('.js-checked, .js-unchecked').click(function() { const justClickedChecked = this.classList.contains('js-checked); $(this).slideUp(0); $(this) .parent('.js-check-container') .find(`.js-${justClickedChecked ? 'un' : ''}checked`) .slideDown(0); })