2011-12-30 23 views
8

¿Es posible combinar $(this) con $('.someclass')?jQuery "this" más otros selectores?

Ejemplo: $(this + ', .someclass').hover();

Estoy intentando utilizar la acción de desplazamiento para animar una clase no descendiente. Quiero que el elemento clase anime si "it", también conocido como $ ('. Someclass') O $ (this) está suspendido.

Espero que esto se pueda hacer sin crear 2 acciones independientes.

+1

Si '' this' tiene un id', '$ ('#' + this.id +', .someclass') Pase el ratón();.'. –

Respuesta

16

Puede usar jQuery's .add().

$(this).add('.someClass').hover(); 
+0

¡Gracias .....! –

+0

¡De nada! Me alegro de poder ayudar :-) –

0

Otra opción sería utilizar jQuery find()

$(this).find('.someclass').hover(); 
+0

Esto buscará '.someclass' como un hijo de' this'. No es el equivalente de ',' en un selector. –

1

Puede usar el contexto de selección: http://api.jquery.com/jQuery/#jQuery-selector-context

$('+ .someclass', this).hover(); 

Este es un ejemplo: Pasa el cursor sobre el primer hermano y el segundo hermano de el color de fondo cambiará

$('.sibling1').hover(
 
    function() { 
 
    $('+ .sibling2', this).css({"background":"#ff0"}); 
 
    }, 
 
    function() { 
 
    $('+ .sibling2', this).css({"background":"#eee"}); 
 
    } 
 
);
div { 
 
    padding:5px; 
 
    background:#eee; 
 
    margin-bottom:5px; 
 
    display:inline-block; 
 
    cursor:pointer; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<div class="sibling1">Sibling 1</div> 
 
<div class="sibling2">Sibling 2</div>