Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2015
    Messaggi
    8

    link a div nascosti di altre pagine

    Ciao a tutti!


    La situazione è questa: disperazione.


    ho la pagina home.html che contiene tutta una serie di img, e la pagina cosa_faciamo.html che contiene un menu laterale che apre div nascosti, al click.
    Come è possibile creare dei link per i quali, cliccando sulla determinata img della home, si apra la pagina cosa_faciamo.html al div relativo?
    In altre parole, come posso creare un link che apra un div nascosto di un'altra pagina?

    Ho provato ad utilizzare nella home.html <a name="#div1">, e <a href="cosa_facciamo.html#div1"> nella cosa_facciamo.html, ma non funge.



    Spero di essermi espressa in maniera comprensibile!
    Grazie in anticipo!

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Ciao e benvenuta
    Cosa intendi per non funge da errore? non mostra il div? che stato ha il div?
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2015
    Messaggi
    8
    Ciao Andrea, grazie per il benvenuto!

    Esatto, non mostra il div!
    E penso che il motivo di ciò dipenda da questo codice che ho inserito nella pagina coi div nascosti (cosa_facciamo.html):

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2015
    Messaggi
    8
    function HideContent(d) {
    document.getElementById(d).style.display = "none";
    }
    function ShowContent(d) {
    document.getElementById(d).style.display = "block";
    }
    function ReverseDisplay(d) {
    if(document.getElementById(d).style.display == "none") { document.getElementById(d).style.display = "block"; }
    else { document.getElementById(d).style.display = "none"; }
    }

    function HideAllShowOne(d) {
    var IDvaluesOfEachDiv = "section1 section2 section3 section4 section5 section6";

    IDvaluesOfEachDiv = IDvaluesOfEachDiv.replace(/[,\s"']/g," ");
    IDvaluesOfEachDiv = IDvaluesOfEachDiv.replace(/^\s*/,"");
    IDvaluesOfEachDiv = IDvaluesOfEachDiv.replace(/\s*$/,"");
    IDvaluesOfEachDiv = IDvaluesOfEachDiv.replace(/ +/g," ");
    var IDlist = IDvaluesOfEachDiv.split(" ");
    for(var i=0; i<IDlist.length; i++) { HideContent(IDlist[i]); }
    ShowContent(d);
    }


    Se preferisci allego i file completi!
    Ultima modifica di jei; 04-03-2015 a 00:30

  5. #5
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ciao, molto sinteticamente, puoi risolvere col css usando la pseudo-classe :target (non funziona su vecchie versioni di IE).

    Sulla pagina "cosa_facciamo" inserisci questa semplice regola css:
    codice:
    #div1:target{
      display:block;
    }
    Questo mostrerà l'elemento con id="div1" quando viene specificato il nome dell'ancora nell'indirizzo URL (così come già hai).
    Se vuoi che agisca su più elementi puoi scriverli separati da virgola in questo modo:
    codice:
    #div1:target,#div2:target,#div3:target,#div4:target{
      display:block;
    }
    Quindi sul tuo html puoi scrivere semplicemente il tag in questo modo:
    codice:
    <div id="div1">questo è il div1</div>
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2015
    Messaggi
    8
    Niente, non funziona!
    Cioè, mi collega alla pagina cosa_facciamo, ma non mi apre il div nascosto.

    Siccome non ho ancora capito come si inserisca il codice in questa casella, allego un .txt per fare chiarezza. cosa_facciamo.txt
    (Ps. i div di cui parlo hanno id="section1 2 3 ecc.)

    Grazie per l'aiuto KillerWorm!

  7. #7
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ok, prova in questo modo. Togli il css in linea dai tag con id=section... cioè elimina i vari style="display:none;"
    Quindi inserisci questo css nell'head (sai come si fa?):
    codice:
    .section>div{
      display:none;
    }
    #section1:target,
    #section2:target,
    #section3:target,
    #section4:target,
    #section5:target,
    #section6:target{
      display:block;
    }
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2015
    Messaggi
    8
    A dire il vero no, sono poco esperta a dir la verità
    lo inserisco paro paro?

    (quel > in .section>div{ è giusto?

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2015
    Messaggi
    8
    Grandeeeeee funziona!
    Grazie mille!

    Ma curiosità, cambia qualcosa inserire il css direttamente nella pagina interessata?

    E poi un'altra cosa, essendo la pagina basata su javascript, in che misura potrebbe compromettere il suo funzionamento l'apertura mediante explorer? Per ovviare la cosa deduco che si debba ridurre al minimo l'utilizzo di javascript, sbaglio?

  10. #10
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Bene. Per maggiori informazioni sui css vedi qualche guida tipo: http://www.html.it/pag/14211/inserir...-un-documento/

    Riguardo javascript si aprirebbe un discorso senza fine. Ad ogni modo oggigiorno qualsiasi browser lo supporta. Personalmente non mi preoccuperei più di tanto nell'utilizzarlo, a patto che lo si faccia con criterio e scrivendo dello script sintatticamente corretto.
    Se comunque hai bisogno di chiarimenti o maggiori informazioni per dettagli particolari, sarebbe meglio aprire una nuova discussione.

    PS: per inserire del codice sul forum, puoi usare i tag [ code ] [/ code ] (senza spazi)
    PPS: giusto per la cronaca.. ultimamente il forum sta dando errori, specialmente quando si utilizzano tag di formattazione...
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

Tag per questa discussione

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.