jQuery : Visibility (Sichtbarkeit) von Elementen abfragen

06. Januar 2009
Um festzustellen, ob ein Element angezeigt wird (sichtbar ist) bzw. ob es nicht angezeigt wird (versteckt ist), kann man die jQuery Funktion is( expr ) nutzen:
 
/* teste Sichtbarkeit für ein bestimmtes Element */

if( $('#element_id').is(':visible')){
    alert("Element ist sichtbar");
}
else if( $('#element_id').is(':hidden')){
    alert("Element ist nicht sichtbar");
}
 
Natürlich sollte element_id durch die ID des jeweiligen Elements ersetzt werden.

Das Ganze klappt auch mit Klassen:
 
/* teste Sichtbarkeit für eine Element-Klasse */

if( $('.element_id').is(':visible')){
    alert("Klassen-Element(e) sichtbar");
}
else if( $('.element_id').is(':hidden')){
    alert("Klassen-Element(e) nicht sichtbar");
}
 
Weitere Selektoren habe ich nicht ausprobiert. Spielt einfach mal mit den verschiedenen Selektoren herum.
 
1 Kommentare, Ideen, Vorschläge
1
11. März 2009  |  cornfelt
hallo matze,
es geht auch

if ($('#test:hidden').length == 1)
...

oder schau mal unter

http://www.codylindley.com/jqueryselectors/

nach! dort findest du noch mehr
1 Kommentare bisher.
HILFE
Code-Beispiele werden mit den BBCodes [code][/code] dargestellt. Jedes Tag muss eine Zeile für sich allein haben, d.h der Beispiel-Code muss wirklich ZWISCHEN den Tags stehen. Beispiel:
[code] ACHTUNG! HIER UMBRUCH WICHTIG. TAG [code] MUSS ALLEIN STEHEN
#include <stdio.h>

int main( void ){
    return 0;
} ACHTUNG! HIER UMBRUCH WICHTIG. NACHFOLGENDES TAG [/code] MUSS ALLEIN STEHEN
[/code]

Alles was zwischen den beiden Tags [register] und [/register] eingetragen wird, ist nur für registrierte (und eingeloggte) User sichtbar.
Dein Name *
Deine Email
Deine Website
Vorschau