Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2014
    Messaggi
    52

    creare una barra navigazione dinamica

    Salve a tutti ragazzi, spero di aver scritto nella sezione giusta.
    Voglio creare una barra navigazione tipo: "Pagina1 | Pagina2 | Pagina3 | Pagina4". Voglio che in base alla pagina di dove mi trovo mi deve cambiare il colore di background. utilizzo il php e non voglio utilizzare per ogni <li> un if voglio creare qualcosa di più dinamico utilizzando il javascript e/o jquery, voglio creare uno script che abbia questi step (da premettere che ogni pagina ha una variabile $titolo):

    - confronto la variabile $titolo ad ogni <li> (all'interno di ogni li c'è una <a>)
    codice HTML:
    <ul>
    <li><a>Pagina1</a></li>
    <li><a>Pagina2</a></li>
    <li><a>Pagina3</a></li>
    <li><a>Pagina4</a></li>
    </ul>
    - se per ipotesi $titolo è uguale a pagina3 il colore di background del <li> di appartenenza sarà #FFFFFF

    Per intenderci voglio una cosa del genere fatta al backgroud e non al colore del font "Pagina1 | Pagina2 | Pagina3 | Pagina4"

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Finora cosa hai scritto? Se non l'hai già fatto fai una ricerca su google forse trovi qualcosa.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2014
    Messaggi
    194
    - se per ipotesi $titolo è uguale a pagina3 il colore di background del <li> di appartenenza sarà #FFFFFF
    Stai comunque usando un if. Ci sono miriadi di metodi per fare quello che chiedi ma perchè non un semplice cambio di classe al click, oppure usare un css?

  4. #4
    potresti impostare una classe "active" al tag <li> quando ci clicchi sopra, e impostare lo stile alla classe

    CSS
    codice HTML:
    #ulTest  a { color:red; }
    #ulTest > li:active > a { color:blue; }
    HTML
    codice HTML:
    <ul id="ulTest">
         <li><a>Pagina 1</a></li>
         <li><a>Pagina 2</a></li>
         <li><a>Pagina 3</a></li>
    </ul>
    SCRIPT
    codice HTML:
    $("#ulTest > li").click(function() { 
         $("#ulTest > li").removeClass("active");
         $(this).addClass("active");
    });
    ho scritto di getto senza testare, se ci sono errori chiedi pure

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2014
    Messaggi
    52
    Quote Originariamente inviata da EliBelTI Visualizza il messaggio
    potresti impostare una classe "active" al tag <li> quando ci clicchi sopra, e impostare lo stile alla classe

    CSS
    codice HTML:
    #ulTest  a { color:red; }
    #ulTest > li:active > a { color:blue; }
    HTML
    codice HTML:
    <ul id="ulTest">
         <li><a>Pagina 1</a></li>
         <li><a>Pagina 2</a></li>
         <li><a>Pagina 3</a></li>
    </ul>
    SCRIPT
    codice HTML:
    $("#ulTest > li").click(function() { 
         $("#ulTest > li").removeClass("active");
         $(this).addClass("active");
    });
    ho scritto di getto senza testare, se ci sono errori chiedi pure
    il codice non parte, ad ogni modo non è quello che cerco, perche se un utente accede ad'una pagina specifica tramite preferiti la funzione non si attiva, c'è un modo per prelevare il valore di ogni singolo <li> e attribuirlo ad un array in modo da confrontare i valori dell'array con la variabile $titolo?

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.