2012-06-02 12 views
9

Sto usando FB.Canvas.setAutoGrow(7); per far crescere la mia pagina (pagina = tabella dei punteggi in modo che abbia bisogno di crescere).setAutoGrow: altre pagine dovrebbero "ridursi" di nuovo

Tuttavia, quando torno alle altre pagine, la tela rimane ingrandita, ma dovrebbe adattarsi ai nuovi contenuti, fuori rotta ... In sostanza, deve ridursi di nuovo.

Ho provato setSize ma non ha funzionato.

Chiunque può aiutarmi? Ho cercato ore ... Grazie mille !!!

+0

E nelle altre pagine si sta utilizzando anche setAutoGrow? – CBroe

risposta

20

provare questo - compattare la tela quando si carica una nuova pagina e quindi chiamare setAutoGrow()

FB.Canvas.setSize({height:600}); 
setTimeout("FB.Canvas.setAutoGrow()",500); 

ecco un articolo completo che descrive la soluzione http://www.twistermc.com/36764/shrink-facebook-tabs/

+0

Grazie per aver aiutato molto :) – EinLama

+0

Sono contento di aver aiutato –

+0

Questa è la soluzione che ha funzionato anche per me. – Ryan

2

AFAIK FB.Canvas.setAutoGrow() aumenta solo l'iframe. Non lo riduce mai. Sono stato alla ricerca di una funzionalità simile per un po ', ma non c'è documentazione su come ridurre l'iframe. Sarebbe bello se qualcuno avesse una funzione per fare una sorta di autoShrink().

+0

oppure devono semplicemente creare FB.Canvas.AutoSize(); Ora sarebbe utile. –

+0

Dai un'occhiata alla mia risposta sopra. Rendo più piccola la tela e poi setAutoGrow() la corregge nel modo in cui deve essere. –

1

ho avuto un problema in cui SetAutoGrow era mis calcolo solo leggermente a causa di un margine inferiore sui commenti FB nella parte inferiore della pagina, risultante in una barra di scorrimento.

Mi sono ritrovato a scrivere il mio edificio sopra quanto sopra;

var mainContainer = $("#training"); 

var resizeTimer = setInterval(function() { 

    // fix for FF to make setAutoGrow work. 
    mainContainer.height('auto'); 
    var newHeight = mainContainer.height(); 
    mainContainer.height(newHeight); 

    // fixes lack of auto shrink 
    FB.Canvas.setSize({ height: newHeight }); 
}, 500); 
Problemi correlati