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

    Ancore ed iframe, interferenze tra iframe e pagina contenitrice

    Salve, il mio problema è il seguente:

    ho una pagina suddivisa in tab sfruttando semplicemente le ancora html. Ogni volta che clicco sul tab, sposto il contenuto del div fino all'ancora desiderata.
    Uno dei div a cui fa riferimento un'ancora contiene al suo interno un iframe con una pagina anch'essa suddivisa in tab con lo stesso metodo.
    Il problema è che quando vado ad impostare il location.href = ancora nella pagina contenuta nell'iframe, tutto avviene correttamente se non che anche la pagina contenitrice sposta il contenuto del div in modo che l'iframe sia in cima.

    Per essere più chiari:

    tab1 tab2 tab3
    ------------------------------- limite div contenuto pagina contenitrice
    contenuto tab 2 ad esempio


    - contenuto iframe
    tabA tabB tabC
    -------------------
    contenuto tabC ad esempio

    -------------------
    -fine contenuto iframe

    ------------------------------ fine div contenuto pagina contenitrice


    ecco quando clicco su tabB per fare un esempio, il contenuto della pagina dell'iframe scorre fino all'ancora desiderata, ma anche il contenuto dell'iframe scorre finendo appena sotto il "limite div contenuto pagina contenitrice", prendendo il posto di "contenuto tab 2 ad esempio" e mostrando così i contanuti del tab 3 che si trovano sotto "-fine contenuto iframe".

    Non so se mi sono spiegato bene.

    In pratica vorrei che quando accade nell'iframe, non influenzasse la pagina che lo contiene. Esiste un modo per far riferimento a location.href solo dell'iframe??

    Grazie in anticipo.

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    :master: posta un link alla pagina...

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    152
    È un comportamento normale.

    Puoi recuperare lo sato della barra di scorrimento verticale con:

    document.body.scrollTop

    Però, un momento, questa stessa cambierà in seguito al jump; quindi, memorizzane il valore in una variabile prima di eseguire location.href per l' IFRAME.
    Così:

    var pos = parent.document.body.scrollTop;
    document.location.href = "path/page.html";
    parent.document.body.scrollTop = pos;

    parent. ci permette dall' iframe, di riferirsi alla finestra madre; altrimenti, recuperiamo il document.body.scrollTop dell' iframe stesso.
    L' iframe va pensato come una window dentro un' altra window; un browser dentro un browser.

  4. #4
    Grazie delle risposte, ma ho risolto cambiando menu ed usandone uno puramente in javascript e senza ancore, che mi risolve anche altri problemi secondari.

    Grazie ancora. ^_*

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.