Autore Topic: Dimensionamento automatico altezza iframe  (Letto 7802 volte)

Fabio B.

  • Utente inesperto
  • **
  • Post: 178
Dimensionamento automatico altezza iframe
« il: 06 Marzo, 2014, 17:47:08 »
Ciao a tutti. Sto cercando un sistema per dimensionare automaticamente un iframe contenente una pagina la cui altezza può variare.
Faccio un esempio: http://nomadelfia.zz.mu/la-parrocchia.html#.UxiiIIUrFoE
Qui la pagina contenuta é statica, quindi di altezza nota, ed ho potuto contenerla integralmente modificando questo suggerimento: http://www.highdots.com/forums/javascript-italian/ridimensionare-dinamicamente-iframe-52673.html
ed inserendo un valore assoluto anziché uno relativo, come potete vedere dal sorgente.
Ma per quale motivo non funge la riga di script contenuto in quel forum e che qui non riesco ad incollare?
Lo scopo é di far sparire la barra di scorrimento laterale dentro all'iframe (soprattutto se la pagina nell'iframe é generata dinamicamente da un cms). Si può fare?

lemonsong

  • Anziani
  • Utente storico
  • *
  • Post: 1867
    • lemonsong's world
Re:Dimensionamento automatico altezza iframe
« Risposta #1 il: 06 Marzo, 2014, 22:48:59 »
http://www.highdots.com/forums/javascript-italian/ridimensionare-dinamicamente-iframe-52673.html


Un codice postato nel 2003 penso sia leggermente "superato" per i browser odierni ma potrei sbagliarmi.
Hai inserito un valore fisso, tanto vale dichiarare l'attributo height="1050"

Vedi screen di Firebug:
[ Guests cannot view attachments ]


Per quanto riguarda la barra, puoi provare ad aggiungere questo attributo: scrolling="no"
Non dovrebbe essere supportato da HTML5 ma forse i browser sono buoni.

Prova a cercare l'eventuale soluzione anche su http://stackoverflow.com/


Fabio B.

  • Utente inesperto
  • **
  • Post: 178
Re:Dimensionamento automatico altezza iframe
« Risposta #2 il: 06 Marzo, 2014, 23:37:52 »
Ciao Lemo, grazie mille.
Purtroppo anche io ho già inserito un valore di pixel assoluto ma questo non soddisfa la mia richiesta.
Il problema non é eliminare la barra di scrolling che in queste condizioni risulta indispensabile.
Il problema é renderne la presenza inutile.
So che la barra é eliminabile, mediante opportuno codice nell'opportuno linguaggio; per esempio per le finestre di pop-up posso citere questo link: http://echoecho.com/it/jswindows02.htm
che si riferisce al browser tout court; però non soddisfa la mia richiesta.
Cioé si può fare in modo che una pagina statica integri in sé un parametro dinamico per non dover conoscere necessariamente a priori i parametri variabili di una pagina dinamica?

Fabio B.

  • Utente inesperto
  • **
  • Post: 178
Re:Dimensionamento automatico altezza iframe
« Risposta #3 il: 06 Marzo, 2014, 23:45:06 »
Ho guardato ora lo ss e mi rendo conto che hai citato proprio la modifica fatta da me alla riga di codice suggerita in quel forum.
Là si parlava di dimensionamento relativo che io ho necessariamente cambiato in assoluto ma senza soddisfazione soprattutto nel caso di una pagina interna all'iframe generata da un cms dunque con altezza sempre variabile ed ignota.
Spero sia chiaro il problema.
Esiste la possibilità di intervenire con uno script HTML5, PHP oppure javascript?

Fabio B.

  • Utente inesperto
  • **
  • Post: 178
Re:Dimensionamento automatico altezza iframe
« Risposta #4 il: 06 Marzo, 2014, 23:58:42 »
...ho detto HTML5? ok, pardon, lo so che gli iframe sono deprecati. Soluzioni alternative?

Fabio B.

  • Utente inesperto
  • **
  • Post: 178
Re:Dimensionamento automatico altezza iframe
« Risposta #5 il: 07 Marzo, 2014, 00:15:11 »
...ahhh, comunque a proposito del fatto che tanto varrebbe utilizzare la proprietà height, sono d'accordo con te, ma nel caso di una pagina dinamica si rivela inefficace perché limita l'altezza a mi sembra 160px (non ricordo bene); mentre con lo script alternativo onload= "this.heigth=valoreinpx" funge anche con le pagine dinamiche.

lemonsong

  • Anziani
  • Utente storico
  • *
  • Post: 1867
    • lemonsong's world
Re:Dimensionamento automatico altezza iframe
« Risposta #6 il: 07 Marzo, 2014, 13:02:37 »
...ahhh, comunque a proposito del fatto che tanto varrebbe utilizzare la proprietà height, sono d'accordo con te, ma nel caso di una pagina dinamica si rivela inefficace perché limita l'altezza a mi sembra 160px (non ricordo bene); mentre con lo script alternativo onload= "this.heigth=valoreinpx" funge anche con le pagine dinamiche.


Questa mi sa che non l'ho capita.

Scrivere onload="this.height=1050" oppure height="1050" è (dovrebbe essere) la stessa cosa (vedi screen precedente).Sicuramente hai fatto più prove di me, quindi non discuto più di tanto.
Poi, inserire intere pagine in un iframe non lo trovo molto "sensato".
Ho fatto pure io uso di iframe e frame eh, intendiamoci.  :)

Non ho ancora capito esattamente cosa vuoi fare, comunque QUI puoi trovare e provare uno script che rende (dovrebbe rendere) l'altezza dell'iframe "variabile" in base al contenuto della pagina richiamata; la pagina però deve risiedere nello stesso dominio... se ho capito bene.

Con l'oggetto HTML e Widgets della Pro puoi abilitare l'altezza automatica, quindi se quello script funziona, dovresti essere a posto (se ho capito quello che cerchi).
Con la 10 invece puoi provare questo CSS per impostare l'altezza automatica dell'oggetto HTML e Widgets:

Citazione
<style>
#imHTMLObject_1{
height:auto !important;
}
</style>


Ho fatto una prova veloce con la demo, inserendo un solo oggetto HTML e Widgets nella pagina e pare funzioni.

Fabio B.

  • Utente inesperto
  • **
  • Post: 178
Re:Dimensionamento automatico altezza iframe
« Risposta #7 il: 07 Marzo, 2014, 16:43:56 »
A me no. Sto usando la pro. Ho preparato svariati esempi qui: http://www.sitocentrale.org/
In iframe1 ho inserito nell'oggetto il codice
Codice:
Only registered users can see contents. Please click here to Register or Login., ed ho impostato a destra nelle proprietà della cella altezza=0 senza abilitare l'altezza automatica.
In iframe1conCSS, tutto come sopra ma nelle proprietà della pagina sezione esperto ho inserito il seguente codice prima della chiusura del tag head:
<style>
#imCellStyle_1{
height:auto !important;
}
</style>
In iframe2 ho eliminato il tag heigth dal codice html; ho impostato a destra altezza=0 abilitando l'altezza automatica.
In iframe3 ho inserito nel codice onload="this.height=1050", altezza cella 350 senza altezza automatica.
In iframe4, come il 3 ma abilitando l'altezza automatica.
In iframe5, come il 3 ma altezza cella a 0 e senza abilitare l'altezza automatica.
A proposito, non desidero che la pagina richiamata sia nella stessa directory; si troverà certamente in una sottocartella e forse in un sottodominio perché quello che sto meditando di fare é integrare nel template del mio sito un minisito con db che riceve i dati dal sito principale mediante uno o più forms.
Se ti loggi nella home page con user/user puoi visionare un abbozzo di ciò che sto tentando di fare nella pagina iframedb.
In quella pagina compare per esempio la tabella connessa al db per la gestione automatica dell'iscrizione utenti in wsx5pro.
Il minisito é interamente sviluppato in php e la tabella é suscettibile di crescere indefinitamente col numero degli iscritti.
Uno dei possibili utilizzi che mi prefiggo é quello di creare un sito che sia un pubblico elenco di indirizzi email gratuito ma riservato a chi necessariamente si iscrive per rendersi necessariamente reperibile dagli altri iscritti; il tutto, ovviamente, in modo consapevole e volontario.

lemonsong

  • Anziani
  • Utente storico
  • *
  • Post: 1867
    • lemonsong's world
Re:Dimensionamento automatico altezza iframe
« Risposta #8 il: 07 Marzo, 2014, 17:07:49 »
Tu sei uno "spacciatore" di iframe  :)

Mi ripeto: se la pagina starà nello stesso dominio, la soluzione che ti ho linkato dovrebbe funzionare.

Qui un esempio fatto precedentemente con la 10 demo:
http://lemonsong.altervista.org/test_iframe_height/

Capisco che è difficile valutarlo, non potendo alterare la pagina richiamata in iframe (iframe.html), ma ti posso assicurare che se inserisco nuovi oggetti, la pagina index.html si adegua al contenuto della pagina iframe.html automaticamente.
Nel sorgente trovi i codici commentati, per fare delle prove.

Mi ripeto 2: l'evento onload="this.height=1050" aggiunge l'attributo height="1050" via JS



P.S.
Non ho letto con attenzione tutto il papiro che hai scritto e se mi è sfuggito qualcosa di importante, ti chiedo scusa  :)




Fabio B.

  • Utente inesperto
  • **
  • Post: 178
Re:Dimensionamento automatico altezza iframe
« Risposta #9 il: 07 Marzo, 2014, 18:09:31 »
Sì Lemo, anche io inizialmente ho sfruttato con successo l'attributo heigth per fare quel che dici tu, ma nel mio caso non va bene, ed in generale non va bene per contenere una pagina generata dinamicamente.

Adriano Meis

  • Beta Tester
  • Nuovo arrivato
  • *
  • Post: 89
Re:Dimensionamento automatico altezza iframe
« Risposta #10 il: 07 Marzo, 2014, 19:05:49 »
si scrive height , non heigth che ovviamente non funziona

Fabio B.

  • Utente inesperto
  • **
  • Post: 178
Re:Dimensionamento automatico altezza iframe
« Risposta #11 il: 07 Marzo, 2014, 19:24:42 »
...mannaggia a me! Hai ragione, e in iframe3 non avevo neanche ciuso il tag con >
Stesso problema: in http://www.sitocentrale.org/iframedb---copia.php
non ho messo il tag height, ho impostato a 0 l'altezza cella ed ho abilitato l'altezza automatica.

lemonsong

  • Anziani
  • Utente storico
  • *
  • Post: 1867
    • lemonsong's world
Re:Dimensionamento automatico altezza iframe
« Risposta #12 il: 18 Marzo, 2014, 10:30:47 »

Vedi screen di Firebug:
[...]


Mi sono accorto ora che l'immagine non si ingrandisce, sicuramente ho fatto pasticci quando l'ho allegata.
Ci riprovo:

[ Guests cannot view attachments ]



Edit:
sembra non fungere nemmeno ora... forse è un problema temporaneo, se fosse così, scusate per 'sto post.
« Ultima modifica: 18 Marzo, 2014, 10:38:31 da lemonsong »