jQuery mismo evento de clic para múltiples elementos
¿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();
});
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);
Normalmente uso on
en 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
});
$('.class1, .class2').click(some_function);
Asegúrate de poner un espacio como $('.class1,space here.class2') o no funcionará.