ho trovato nei tutorial questo codice:
che ha il vantaggio di essere compatibile con piu' browsercodice:function inizializza(){ if (document.all) { // creo le variabili per la sintassi di IE documento="document.all"; /* notare le virgolette precedute dall'escape (\"), che si sono rese necessarie, per mantenere inalterata la sinassi e per non incorrere in errori */ parA="[\""; parB="\"]"; visibilita=".style.visibility"; nascosto="\"hidden\""; visibile="\"visible\""; } else if (document.layers){ //NN4 documento="document.layers"; parA="[\""; parB="\"]"; visibilita=".visibility"; nascosto="\"hide\""; visibile="\"show\""; } else if (document.getElementById) { // Opera e NN6 documento="document.getElementById"; parA="(\""; parB="\")"; visibilita=".style.visibility"; nascosto="\"hidden\""; visibile="\"visible\""; } } function nascondi(Liv) { //eseguo l'istruzione tramite eval, come somma di variabili eval(documento+parA+Liv+parB+visibilita+"="+nascosto+";"); } function mostra(Liv) { //istruzione identica alla precedente, soltando che rende visbile eval(documento+parA+Liv+parB+visibilita+"="+visibile+";"); }
usa visibility invece di display ma poco importa.
pero funziona solo con livelli presenti sul documento, come posso adattarlo per livelli inseriti in un frame???