2012-10-10 18 views
8

El followingcode se disparará alerta al evento click de los elementos con class = a.cssPauseAllOR atributo = historyIDJQuery varios selectores "y" operador

$(document).on("click","a.cssPauseAll,[historyID]", function() { 
    alert($(this)); 

}); 

¿Cómo puedo usar varios selectores utilizando un operador AND?

lo que significa, los elementos con el a.cssPauseAll clase ANDhistoryID atributo?

Respuesta

8

Basta con retirar la , de su selector:

$(document).on("click","a.cssPauseAll[historyID]", function() { 

historyID no es un atributo válido puede utilizar en lugar data-* atributo:

$(document).on("click","a.cssPauseAll[data-historyid]", function() { 
+4

1 por mencionar atributos de datos. –

+0

No lo entiendo ... ¿los datos son solo una convención? porque funciona sin él – RollRoll

+1

@EdwinSoho Sí, funciona, pero hace que su documento no sea válido, los atributos 'data- *' le permiten almacenar datos personalizados en su documento http://html5doctor.com/html5-custom-data-attributes/ – undefined

3

los elementos con el a.cssPauseAll clase AND historyID atributo

Utilice el siguiente selector:

a.cssPauseAll[historyID] 

prueba usted mismo - http://jsfiddle.net/SrNDt/

Nota: comas, selectores individuales y por lo tanto se comportan como una lógica OR. Encadenando expresiones en un solo selector se comportan como un AND lógico.

1

probar este

$(document).on("click","a.cssPauseAll[historyID]", function() { 

Basta con retirar la coma ,