jQuery mismo evento de clic para múltiples elementos

Resuelto Kelvin asked hace 15 años • 10 respuestas

¿Hay alguna forma de ejecutar el mismo código para diferentes elementos de la página?

$('.class1').click(function() {
   some_function();
});

$('.class2').click(function() {
   some_function();
});

en lugar de hacer algo como:

$('.class1').$('.class2').click(function() {
   some_function();
});
Kelvin avatar Aug 22 '09 00:08 Kelvin
Aceptado
$('.class1, .class2').on('click', some_function);

O:

$('.class1').add('.class2').on('click', some_function);

Esto también funciona con objetos existentes:

const $class1 = $('.class1');
const $class2 = $('.class2');
$class1.add($class2).on('click', some_function);
Eevee avatar Aug 21 '2009 18:08 Eevee

Normalmente uso onen lugar de click. Me permite agregar más oyentes de eventos a una función específica.

$(document).on("click touchend", ".class1, .class2, .class3", function () {
     //do stuff
});
bzin avatar Jul 11 '2014 11:07 bzin
$('.class1, .class2').click(some_function);

Asegúrate de poner un espacio como $('.class1,space here.class2') o no funcionará.

coolguy avatar Aug 25 '2011 04:08 coolguy