Ciao, a prescindere dal resto, la sintassi di questo selettore è sbagliata:
codice:
is("class$=['nascosto']")
Secondo la documentazione, si dovrebbe scrivere così:
codice:
is("[class$='nascosto']")
Ad ogni modo non ho capito bene le tue indicazioni.
Se nascosto e visibile sono dei termini "isolati" all'interno dell'attributo class allora sono in tutto e per tutto dei termini che identificano, loro stessi, delle classi, per cui il metodo da te utilizzato non avrebbe tanto senso (anche se potrebbe funzionare).
Facendo un esempio: se tu hai una situazione del tipo class="qualcosa qualcosaltro-nascosto", in questo caso il termine nascosto è comunque parte del nome classe qualcosaltro-nascosto. Hai quindi due classi (qualcosa e qualcosaltro-nascosto) che puoi usare singolarmente per identificare quel dato elemento.
Se invece la situazione fosse class="qualcosa qualcosaltro nascosto" (un diverso ordine dei termini non fa alcuna differenza) allora il termine nascosto è di per se una classe. In questo caso hai tre classi (qualcosa, qualcosaltro e nascosto) che puoi usare comunque singolarmente per identificare quell'elemento.
Se tu hai la prima situazione allora avrebbe senso il metodo da te utilizzato, altrimenti può avere più senso quanto indicato da Andrea oppure, ancora meglio, una cosa del genere:
codice:
alert($("#cronoLog").hasClass("nascosto") ? "MOSTRO":"NASCONDO");
o anche:
codice:
alert($("#cronoLog.nascosto").length ? "MOSTRO":"NASCONDO");