Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Iframe elastico

  1. #1

    Iframe elastico

    Buon pomeriggio, mi stavo chiedendo se sia possibile creare un iframe elastico, ovvero un iframe che in base al contenuto della pagina che "carica" adatti automaticamente la sua altezza.

    Questo per evitare sprechi inutili di spazio e quindi non gravare sul design del sito!!!

    Grazie per l' attenzione

    Buon anno a tutti

  2. #2
    Utente bannato
    Registrato dal
    Dec 2008
    Messaggi
    78
    Si possono far caricare le pagine via JavaScript all' iframe, anziché da Link A HREF TARGET; e dunque stabilire delle associazioni del tipo:

    URL1 | height="a" all' iframe

    URL2 | height="b" all' iframe

    assegnando tali Valori congiuntamente all' iframe con stringhe di esecuzione del tipo:

    document.getElementById("idIframe").src = "URL2";

    document.getElementById("idIframe").height = "b";

    Se poi però all' interno di quelle pagine ci sono a loro volta dei link, questo allora prospetta una faccenda diversa; sono pagine tue o di altri siti che ci fai apparire ?
    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head><title>URL based IFRAME Sizer</title>
    
    <script type="text/javascript">
        
    function change(content, h){
    
     document.getElementById("viewer").src    = content;
     document.getElementById("viewer").height = h;
    
     }
    
    </script>
    
    </head>
    <body bgcolor="#404040">
    
    <div align="center">
                
    
    
    
    <input value=" html.it " type="button" onclick='change("http://www.html.it/",   "400");'>
    <input value="google.it" type="button" onclick='change("http://www.google.it/", "260");'>
    
    
    
    <iframe id="viewer" frameborder="1" width="50%" height="" scrolling="" src=""></iframe>
    
    
    </div>
    
    </body>
    </html>

  3. #3
    Praticamente la pagina in questione contiene un iframe al quale è associato un solo link ad una mia pagina.
    Questa pagina che verrà aperta nel frame è caratterizzata da una barra orizzontale di menù, quindi l'altezza del frame andrebbe anche bene impostarla a 30px.
    Successivamente però, a seconda di che voce del menù scelgo, si apre nel frame la pagina relativa (anch'essa mia).
    Variando quindi l' estensione in verticale.

    Magari se ci fosse un modo di reimpostare l' altezza ad ogni link non sarebbe male.
    Mi sembra di capire che col tuo metodo questo è possibile, però faccio notare che il frame viene chiamato una volta sola, cioè nella pagina iniziale, i successivi link si aprono nel frame grazie all' attributo target="nomeframe".

    Spero di essermi spiegato bene!

    Grazie

  4. #4
    Utente bannato
    Registrato dal
    Dec 2008
    Messaggi
    78

    parent.document

    Originariamente inviato da alex1986
    .. quindi l'altezza del frame andrebbe anche bene impostarla a 30px.
    Con gli Attributi frameborder="0" marginheight="0" marginwidth="0" scrolling="no" che potranno tornarti utili.

    Allora essendo tua, lo SCRIPT potrà essere codificato in quella pagina, che sarà di questo tipo:
    codice:
    <html>
    <head><title>Menù Sizer</title>
    
    <script type="text/javascript">
    
    function change(content, h){
    
     window.location.href    = content;
    
     parent.document.getElementById("viewer").height = h;
    
     }
    
    </script>
    
    </head>
    <body bgcolor="#404040">
    
    <div align="center"><input
                               value=" html.it " type="button" onclick='change("http://www.html.it/",   "400");'><input
                               value="google.it" type="button" onclick='change("http://www.google.it/", "260");'>
    
    
    </div>
    
    </body>
    </html>
    Con window.location.href o document.location.href per il reindirizzamento (ora è l' IFRAME stesso la window da essere reindirizzata), e con:
    parent.document.getElementById("viewer")
    che prodigiosamente ci consente di trasferirsi dall' iframe alla pagina master per la ricerca dell' id="viewer" .

    Ora però la barra menù sparisce con l'ingresso della nuova pagina: dovrà essere presente anche su questa, come si fa di consueto per la navigazione tra pagine di un sito.
    Oppure puoi realizzare un combo tra i due SCRIPT che ti ho offerto ed avere un 2° IFRAME nella pagina che è associata di default al 1° IFRAME sulla pagina master.


    Ho usato i pulsanti per chiamare la function ma anche i classici Link rimangono fattibili nelle forme:
    togliendo i trattini - che il sistema del forum inserisce.

    Attenzione ad avere sempre apici " " ed apostrofi ' ' in alternanza, altrimenti interferiscono.

  5. #5
    Funziona alla grande, complimenti, grazie mille!!!


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.