Interfaccia utente jQuery: una funzione di scambio che nasconde e rivela gli elementi tramite il selettore
-
03-07-2019 - |
Domanda
Prefazione: ho un'interfaccia utente jQuery e jQuery inclusa in una pagina.
Ho questa funzione definita:
function swap(sel) {
if (1 == 1) {
$(sel).hide('drop',{direction:'left'});
}
}
Come posso correggere la parte (1 == 1) per verificare se l'elemento è già nascosto e quindi riportarlo indietro se lo è. Sono sicuro che sia facile, ma sono nuovo su jQuery.
Soluzione
se non ti piace toggle
, questo potrebbe aiutarti:
function swap(sel) {
if($(sel).is(':visible')) {
$(sel).hide('drop',{direction:'left'});
} else {
$(sel).show('drop',{direction:'left'});
}
}
Altri suggerimenti
Forse $ (sel) .toggle ();
è quello che stai cercando? Questo è il modo migliore per attivare la visibilità di un elemento.
Come hanno detto gli altri risponditori, toggle ()
è la soluzione migliore. Tuttavia, se per qualche motivo non è possibile / non si desidera utilizzare l'interruttore, e se il selettore è per un solo elemento:
function swap(sel) {
if ($(sel).is(':visible')) { // Is this element visible?
$(sel).hide('drop',{direction:'left'});
}
}
Avvertenza: il: controllo visibile restituirà un falso positivo se l'elemento o uno dei suoi genitori sono : nascosto
. Se questo è importante per te, potresti dare un'occhiata a questa soluzione che tenta di verificare anche quello.