Visualizzazione dei risultati da 1 a 9 su 9

Discussione: alternare <div>

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    60

    alternare <div>

    Ciao,
    ho il seguente problema:
    ho una pagina con i CSS cosi` formata
    Titolo
    |---Link corpo1, Link corpo2, Link corpo3
    Corpo
    |---Corpo1
    |---Corpo2
    |---Corpo3
    Footer
    |---altre info

    Sulla barra del titolo un menu` di navigazione
    Nel corpo del testo diviso in tre <div>: #corpo1, #corpo2, #corpo3
    Vorrei,alternare il testo visibile a seconda del link che si clikki, ovvero se clikko su Link corpo1 vedere la pagina nel seguente modo:
    Titolo
    |---Link corpo1, Link corpo2, Link corpo3
    Corpo
    |---Corpo1
    Footer
    |---altre info

    se clikko su Link corpo2
    Titolo
    |---Link corpo1, Link corpo2, Link corpo3
    Corpo
    |---Corpo2
    Footer
    |---altre info
    e cosi` via.
    Questo pero` lo vorrei fare senza scivere tre pagine html uguali ove cambia solo il testo del corpo.
    Qualcuno sa dirmi se esiste un modo per fare tale operazione?
    Spero di essere stato abbastanza chiaro
    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Se ho capito bene (cosa di cui non sono sicuro), hai bisogno anche di un po' di JS.
    codice:
    <div id="spaziolink">
      vedi corpo 1 &amp;nbsp;
      vedi corpo 2 &amp;nbsp;
      vedi corpo 3 &amp;nbsp;
    </div>
    
    <div id="corpo">
      <div id="corpo1" style="display:none;">
        ... il contenuto di corpo1 ...
      </div>
      <div id="corpo2" style="display:none;">
        ... il contenuto di corpo2 ...
      </div>
      <div id="corpo3" style="display:none;">
        ... il contenuto di corpo3 ...
      </div>
    </div>
    Nella head della pagina ci dovra` essere un JS di questo tipo:
    codice:
    function vedi(ogg) {
      for(var i=1; i<=3; i++) { //nasconde tutti
        getElementById('corpo'+i).style.display = 'none';
      }
      getElementById(ogg).style.display = 'block'; // mostra ogg
    }
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    60
    Sembra perfetto, ma non mi funziona!!!


    Mi da un errore all'inizio della pagina, sullo javascript.
    ti metto il codice usato

    <script type="text/javascript">
    <!--
    function vedi(ogg) {
    //nasconde tutti
    getElementById('Centrale_page1_Mission').style.dis play = 'none';
    getElementById('Centrale_page1_chisiamo').style.di splay = 'none';

    getElementById(ogg).style.display = 'block'; // mostra ogg
    }
    // -->
    </script>

    Ho dovuto levare il ciclo in quanto non hanno il nome sequenziale, ma non credo che questo crei il problema


    <div id="Centrale_menu_sx_p1">
    <h3><span>L'azienda</span></h3>
    <ul class="Centrale_menu_p1">
    [*]La Missione
    [*]Chi Siamo
    [/list]
    </div>
    questa e` la parte relativa al menu`

    <div id="Centrale_page1_Mission" style="display:none;">
    <h2><p class="Titolo2">Mission</p></h2>



    Testo del corpo 1</p>


    </div>

    <div id="Centrale_page1_chisiamo" style="display:none;">
    <h2><p class="Titolo2">Chi Siamo</p></h2>


    Testo del corpo 2 </p>

    </div>

    Dove sbaglio?
    Mi da un errore, ma non specifica quale, sulla linea che contiene
    getElementById('Centrale_page1_Mission').style.dis play = 'none';

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    60
    L'errore e` Object expected
    :-)

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    La Missione

    C'e` un errore: non esiste il div con id="La Missione" che poi non potrebbe funzionare (non si possono usare spazi negli id).

    Potrebbe essere che intendevi:
    La Missione


    Inoltre manca un return false; (che mi ero dimenticato) altrimenti potresti avere dei problemi poi:
    La Missione

    Per il numero di riga dell'errore: IL browser conta le righe sul file che arriva a lui: se usi un programma lato server (tipo ASP, PHP o altri) questo non coincide con le righe del sorgente.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    60
    si scusa mi ero sbagliato a scriverlo,[*]La Missione
    etc etc.
    ma anche cosi` non mi funziona.....

    Non uso nessu programma lato server.
    e` una pagina html normale con css senza php o altro
    Chi mi riporta l'errore e1 il tool di sviluppo (html-kit)

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Non fidarti del tool di sviluppo: tante cose non le capisce.

    Prova la pagina nel browser (anche in locale, se non vuoi andare in rete: i JS semplici non hanno differenze).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    60
    Ok grazie tante trovato.
    mancava document. davanti a getElementById

    GRAZIE!!!!

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Opppps scusa.

    Non me ne ero accorto.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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.