4

Я строил вкладку facebook, используя html и css и facebook javascript SDK.Facebook iframe FB.Canvas.setAutoGrow не растет автоматически после начальной загрузки?

У меня возникли проблемы с изменением размера iframe до размера содержимого.

мне удалось заставить его работать на начальной загрузки, которая круто, используя этот скрипт ниже ...

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://ogp.me/ns/fb#"> 

-

<div id="fb-root"></div> 
<script type="text/javascript"> 
    window.fbAsyncInit = function() { 
    FB.init({ 
     appId  : '00000000000000', // App ID 
     channelUrl : '//www.mywebsite.com/channel.html', // Channel File 
     status  : true, // check login status 
     cookie  : true, // enable cookies to allow the server to access the session 
     xfbml  : true // parse XFBML 
    }); 

    FB.Canvas.setAutoGrow(); 

    }; 

    // Load the SDK Asynchronously 
    (function(d){ 
    var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;} 
    js = d.createElement('script'); js.id = id; js.async = true; 
    js.src = "//connect.facebook.net/en_US/all.js"; 
    d.getElementsByTagName('head')[0].appendChild(js); 
    }(document)); 
</script> 

и мой channel.html выглядит следующим образом ...

<?php 
$cache_expire = 60*60*24*365; 
header("Pragma: public"); 
header("Cache-Control: max-age=".$cache_expire); 
header('Expires: ' . gmdate('D, d M Y H:i:s', time()+$cache_expire) . ' GMT'); 
?> 
<script src="//connect.facebook.net/en_US/all.js"></script> 


как я сказал, что первоначальные разрешения загрузки страницы izing является совершенным, но поскольку я перемещаюсь вокруг iframe, он не авторезистент к моему контенту.

Может кто-нибудь посоветует, поскольку я очень новичок в этой фейсбуке iframe biz.

Спасибо заранее

ответ

1

Пожалуйста, проверьте эти:

А, У вас есть <!DOCTYPE html> в верхней части HTML?

B, делает ли ваше приложение действительным HTML? Вот инструмент проверки подлинности: http://validator.w3.org/

+0

Спасибо за ваше предложение. Я очистил все там ошибки, поэтому получил зеленый свет и doctype был на месте. Правильно ли я полагаю, что iframe должен всегда изменять размер контента, а не только на начальной загрузке? – Joshc

+0

Должен ли я разместить свой контент внутри '

'? – Joshc

+1

Нет, это не обложка для Facebook. 1 год назад я решил проблему с изменением размера таким образом, но теперь скрипт FB работает лучше. Вы можете использовать FB.Canvas.setAutoGrow() funciton, чтобы автоматически изменить размер вашего iframe. Полная документация здесь: https://developers.facebook.com/docs/reference/javascript/FB.Canvas.setAutoGrow/. Очевидно, что это не непрерывно, вам нужно настроить интервал изменения размера. –

Смежные вопросы