2017-02-14 2 views
0

Ich habe eine einfache Funktion:Überprüfung für den Status von jquery verstecken und zeigen

expandContact =() => { 
    $('#' + this.props.id).find('.ekipa-li-expand').show(); 
    } 

Jetzt würde ich gerne einen Zustand schreiben, die überprüft, ob das Element sichtbar ist oder nicht (ich möchte das Element verstecken auf klicken, wenn es angezeigt, und es zeigen, ob es hidedn wird.

so weit ich die .show() Funktion style="display: block;" auf das DOM-Element kann sagen, nur ergänzt. Aber wie kann ich überprüfen, für diese in einem Zustand mit Javascript?

+0

Sie könnten .toggle() anstelle von .show() verwenden. –

+0

Wie in den Kommentaren erwähnt, können Sie 'toggle' verwenden, um den Status zu wechseln. Wenn Sie jedoch wissen möchten, ob ein Element sichtbar ist, verwenden Sie 'is (": visible ")' – nbokmans

Antwort

4

Sie brauche keine Bedingung zu schreiben, y ou kann nur toggle() verwenden:

expandContact =() => { 
    $('#' + this.props.id).find('.ekipa-li-expand').toggle(); 
} 

Für Referenz, wenn aus irgendeinem Grund, Sie haben müssen den sichtbaren Zustand eines Elements kennen Sie die is() Methode mit dem :visible Selektor verwenden:

if ($('#' + this.props.id).find('.ekipa-li-expand').is(':visible')) { 
    // do something... 
} 
Verwandte Themen