2009-06-08 10 views

Respuesta

6

para la búsqueda de artículos dentro de esta:

$(':visible, any-selector', this) 
$(this).find(':visible, any-selector') 

si quieres un verdadero o falso retorno:

if($(this).is(':visible, any-selector')){ 
    alert('this is visible, or matches "any-selector"'); 
    } 
else{ 
    alert('this is hidden, or doesn\'t match "any-selector"'); 
    } 
1

uso esta sintaxis: jQuery(expression, [context])

$(":contains(foo)", this) 
$(":visible", this) 
$("any-selector", this) 
+0

eso no es correcto. Solo seleccionará subelementos de 'esto' –

+0

jQuery (expresión, contexto) es lo mismo que jQuery (contexto) .find (expresión). – Lathan

+0

la votación no está relacionada con la respuesta a la pregunta, quería saber cómo usar la palabra clave 'this' con otros selectores –

3

Eso es lo que el método de filtro() es para:

$(this).filter(":contains(foo)"); 
$(this).filter(":visible") 

De acuerdo con los documentos:

Remo todos los elementos del conjunto de elementos coincidentes que no coinciden con la (s) expresión (es) especificada (s).

+0

Sí, eso filtrará los elementos coincidentes con su selector, pero nuestros elementos coincidentes = [esto]. Solo has seleccionado "esto". Entonces, si esto no concuerda con su selector, tendría que hacer un .size() para saber si coincide o no ... buscar las miradas dentro de los elementos seleccionados, y devuelve una respuesta lógica verdadera/falsa del selector en el conjunto. – Lathan

Cuestiones relacionadas