2009-06-08 7 views

Répondre

6

Pour la recherche des articles dans ce:

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

si vous voulez un retour vrai ou faux:

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

utiliser cette syntaxe: méthode jQuery(expression, [context])

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

qui est incorrect. Il ne sélectionnera que les sous-éléments de 'this' –

+0

le jQuery (expression, contexte) est le même que jQuery (contexte) .find (expression). – Lathan

+0

le vote up n'est pas lié à la réponse à la question, je cherchais à savoir comment utiliser le mot-clé 'this' avec d'autres sélecteurs –

3

C'est ce que le filtre() est pour:

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

Selon les docs:

Remo ves tous les éléments de l'ensemble des éléments correspondants qui ne correspondent pas aux expressions spécifiées.

+0

Oui, cela filtrera vos éléments correspondants par votre sélecteur, mais nos éléments correspondants = [ceci]. Vous avez seulement sélectionné "ceci". Donc, si cela ne correspond pas à votre sélecteur, vous devrez faire un .size() pour dire si elle correspond ou non ... trouver des regards à l'intérieur des éléments sélectionnés, et retourne une réponse true/false logique du sélecteur sur le ensemble. – Lathan