Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    3 livelli div sovrapposti

    Salve,
    Ho tre livelli sovrapposti, ogni uno contenente un SWF.

    Vorrei che quando clicco su un testo si nascondessero tutti tranne quello scelto.

    es.

    testo: Filmato1 --> #layer16a visibile --> #layer16b hidden --> #layer16c hidden
    testo: Filmato2 --> #layer16a hidden --> #layer16b visibile --> #layer16c hidden
    testo: Filmato1 --> #layer16a hidden --> #layer16b hidden --> #layer16c visibile


    gli stili dei livelli li ho all'interno di un css.


    Penso si deva fare un link ad una funzione in java per ogni filmato la quale setta le proprità dei vari livelli, tipo filmato1 onclik ="filmato(1)" filmato2 onclik ="filmato(2)" filmato3 onclik ="filmato(3)"
    Però non so come fare. HELP

  2. #2
    codice:
    <head>
    <script type="text/javascript">
    <!--
    function nascondi(numid) {
    for (n=1; n<=3; n++) {
    document.getElementById("liv" + n).style.display = "none";
    }
    document.getElementById("liv" + numid).style.display = "";
    }
    -->
    </script>
    </head>
    <body>
    ................
    <div id="liv1">...</div>
    <div id="liv2">...</div>
    <div id="liv3">...</div>
    ................
    Mostra livello 1
    Mostra livello 2
    Mostra livello 3
    Questa funzione accetta come parametro il numero finale dell'id dei livelli, li nasconde tutti e subito dopo mostra solo quello scelto. Da notare che, dato che un livello è sempre visibile (e quindi la sua posizione influisce sul layout della pagina), invece di usare display = "none" e display = "" nella funzione, puoi usare visibility = "hidden" e visibility = "visible" (o "show"...non so se tutti i browser interpretino correttamente "visible" quando riferito alla proprietà visibility).

  3. #3
    grazie per lo script funziona quasi... solo che non capisco.. mi nasconde, e poi non mi abilita più a vederli i layer 1, 2 3.. mentre i miei filmati sono nel 50,51,52...

    Lo script l'ho fatt così:

    codice:
    </script>
    
    <script type="text/javascript">
    function nascondi(numid) {
    for (n=1; n<=3; n++) {
    document.getElementById("Layer" + n).style.display = "none";
    }
    document.getElementById("Layer" + numid).style.display = "";
    }
    
    </script>
    
    
    Filmato 1 / Filmato 2 / Filmato 3

  4. #4
    ho provato a mettere anche così, ma non va lo stesso.. non ricompare, oltre al fatto che mi punta ai primi tre layer anziche al 50-51-52


    codice:
    <script type="text/javascript">
    function nascondi(numid) {
    for (n=1; n<=3; n++) {
    document.getElementById("Layer" + n).style.visibility = "hidden";
    }
    document.getElementById("Layer" + numid).style.visibility = "visible";
    }
    
    </script>

  5. #5
    Penso sia il ciclo for...se lo guardi va da n=1 a n<=3, quindi considera solo i <div> il cui id termina con 1, 2 e 3...basta che modifichi quello.

  6. #6
    si grazie era proprio quello, ora funziona alla grande, tnx a lot

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.