• User Newbie

    Problema funzione Show Hide Javascript

    Salve a tutti ho da poco iniziato a utilizzare il javascript Show hide per alcune sezioni del mio sito! Tuttavia questo code mi da alcuni problemi e vorrei impostarlo in modo che quando c'e gia un contenuto aperto prima che ne apra un'altro chiuda quello precedente. Il mio codice attuale sovrappone i vari contenuti che apro con il show hide!

    ecco qui il codice javascript che utilizzo
    <script language="javascript" type="text/javascript">
    function showHide(shID) {
    if (document.getElementById(shID)) {
    if (document.getElementById(shID+'-show').style.display != 'block') {
    document.getElementById(shID+'-show').style.display = 'none';
    document.getElementById(shID+'-show').style.display = 'block';
    document.getElementById(shID).style.display = 'block';
    }
    else {
    document.getElementById(shID+'-show').style.display = 'inline';
    document.getElementById(shID).style.display = 'none';

      }
    

    }
    }
    </script>

    Ecco qui il codice che utilizzo per i contenuti

    <table border="0" cellpadding="3" cellspacing="0" width="700">
    <tr>
    <td><a href="#uzumaki" id="uzumaki-show" class="showLink" onclick="showHide('uzumaki');return false;"><img src=".../clan_uzumaki.png" width="135"></a></td>

    <td> <a href="#" id="uchiha-show" class="showLink" onclick="showHide('uchiha');return false;"><img src="...clan_uchiha.png" width="135"></a> </td>
    </table>

    <div id="uzumaki" class="more" >
    <p>
    Il Clan Uzumaki era il principale clan del Villaggio. Vantava una remota parentela di sangue con il Clan Senju di Konoha, e questo fu alla base della secolare alleanza fra i paesi del...
    </p>
    <p><a href="" id="uzumaki-hide" class="hideLink" onclick="showHide('uzumaki');return false;">Chiudi</a></p>
    </div>

    <div id="uchiha" class="more">
    <p>
    Il Clan Uchiha è uno dei clan del Villaggio della Foglia nella serie manga ed anime Naruto, del mangaka Masashi Kishimoto. Un tempo considerato il più potente clan del Villaggio della Foglia, l'unico...
    </p>
    <p><a href="" id="uchiha-hide" class="hideLink" onclick="showHide('uchiha');return false;">Chiudi</a></p>

    ....
    </div>

    In totale le targhette che utiizzo sono 8 quindi vorrei fare in modo che aprendo il contenuto di una targhetta mi appaia il contenuto sotto all'interno delle linee (display = 'inline';) e che cliccando su un'altra targhetta, quella gia aperta si chiuda automaticamente e si apra quella nuova su cui ho cliccato!

    Spero possiate aiutarmi sto chiedendo aiuto un po dapertutto! Grazie in anticipo!


  • ModSenior

    Ciao Raylight, benvenuto innanzitutto nel forum gt.
    Sposto la tua discussione in un'altra sezione dove potrai avere più possibilità di ricevere consigli per il tuo problema.

    Valerio Notarfrancesco


  • Super User

    @Raylight said:

    In totale le targhette che utiizzo sono 8 quindi vorrei fare in modo che aprendo il contenuto di una targhetta mi appaia il contenuto sotto all'interno delle linee (display = 'inline';) e che cliccando su un'altra targhetta, quella gia aperta si chiuda automaticamente e si apra quella nuova su cui ho cliccato!

    Spero possiate aiutarmi sto chiedendo aiuto un po dapertutto! Grazie in anticipo!
    Ciao Raylight,
    devi fare un ciclo per tutte le "targhette" e fare l'hide di esse (ti conviene creare una funzione hideAll) prima di aprire quella interessata dall'onclick.