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

    ancore e iframe (aiuto su script)

    ho un problema (altrimenti non avrei postato )
    devo realizzare un menù con i seguenti link:

    a b c d e f

    Sotto c'è un iframe di width="120" e height="70" dove compare una lista di nomi che ovviamente non potrà visualizzare tutti:

    a
    aereo
    aiuola
    auto

    b
    baccello
    bottone
    buco

    ecc..
    devo realizzare un'ancora che punti ad un iframe.E fino a qui c'è l'ho fatta. il problema è che quando scrolla la pagina dell'iframe, scrolla anche (per un po)la pagina principale. Ho chiesto un aiuto e il buon Liquido mi ha offerto questa soluzione , che però non funziona.

    nome frame:lista.html
    nome ancora: a

    function scroll(anc){
    url = "lista.html";
    parent.lista.location.href = url + "#" + anc;
    self.location.hash="top";
    }



    [a]
    <iframe src="lista.html" name="lista" width="140" height="70"></iframe>

    nel file lista.html:
    <a name="a">[A]</a>

    Mi potete dare una mano, per favore?
    qvantvm potem tantvm avde

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    vedi se può andare: controlli a che punto si trova la pagina contenitore e la posizioni nuovamente allo stesso punto
    codice:
    <script type="text/javascript">
    function scrolla(anc){ 
    var url = "lista.html";
    var fromTop=(window.pageYOffset)?window.pageYOffset:document.body.scrollTop
    anc=anc.substr(anc.indexOf("#")+1)
    parent.lista.location.href = url + "#" + anc;
    self.scrollTo(0,fromTop)
    return false
    } 
    </script>
    [a]
    ciao

  3. #3
    ok, la soluzione funziona, mi da solo un "tremolio" quando la pagina ritorna al punto iniziale. Sarebbe meglio che non ci fosse, ma pazienza, se qualcuno non offre una soluzione migliore, questa va benissimo.

    grazie Xinod.

    Un'ultima cosa:
    cosa non andava nella proposta di Liquido che ho riportato?
    qvantvm potem tantvm avde

  4. #4
    Utente di HTML.it L'avatar di liquido
    Registrato dal
    Mar 2004
    Messaggi
    164
    Grande Xinod E' proprio ora che mi studi come si deve js..

    Per UnNamed: anche il mio codice (se funzionante) avrebbe prodotto lo stesso tremolio, non mi pare ci sia soluzione migliore


    Bye
    "Html.it, messaggio gratuito. Siamo spiacenti ma il forum da Lei richiesto è chiuso o momentaneamente irraggiungibile. Si prega di riprovare più tardi. Grazie."

    Argh.. maledetta banda!

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    Originariamente inviato da UnNamed
    cosa non andava nella proposta di Liquido che ho riportato?
    chiaramente un link ad un ancora interna al documento lo fa scrollare fino a poco prima di quell' ancora (avevi un ancora con name="top"?), quindi non si ritrova precisamente dov' era prima del click;
    rilevando quanto è già stato scrollato del documento al momento del click e scrollando a quel valore si riposiziona sicuramente nello stesso punto

    qualche sottigliezza:
    scroll è un metodo di window, anche se sostituito da tempo con scrollBy e scrollTo usarlo come nome di una funzione può riservare sorprese

    [a]
    in un link del genere l' onclick non serve, ma, + importante, con javascript disabilitato non otteniamo alcun risultato
    quando a scriverlo così sicuramente qualcosa succederebbe
    [a]

    se javascript è abilitato il return false impedisce la normale esecuzione del link e provvede a fare quello che deve con la funzione
    se javascript è disabilitato c' è un link cmq funzionante

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 © 2026 vBulletin Solutions, Inc. All rights reserved.