4

나는 html과 css 및 facebooks javascript SDK를 사용하여 페이스 북 탭을 구축 해왔다.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은 다음과 같습니다 ... I처럼

<?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 사업에 매우 익숙하다고 조언 할 수 있습니까?

답변

1

다음을 확인하시기 바랍니다 사전에

감사 :

A는, 당신은 HTML의 상단에 <!DOCTYPE html>이 있습니까?

B, 앱이 유효한 HTML을 생성합니까? 유효성 검사기 도구는 다음과 같습니다. http://validator.w3.org/

+0

제안 해 주셔서 감사합니다. 나는 거기에 모든 오류를 청소 그래서 녹색 불빛과 doctype 장소에있어. iframe이 초기로드뿐만 아니라 항상 컨텐츠의 크기를 조정해야한다고 생각하는 것이 맞습니까? – Joshc

+0

내 콘텐츠를'

'안에 넣어야합니까? – Joshc

+1

아니요, Facebook 용 래퍼입니다. 1 년 전이 방법으로 크기 조정 문제를 해결했지만 FB 스크립트가 더 잘 작동합니다. FB.Canvas.setAutoGrow() 함수를 사용하여 iframe의 크기를 자동으로 조정할 수 있습니다. 전체 설명서는 https://developers.facebook.com/docs/reference/javascript/FB.Canvas.setAutoGrow/에서 확인할 수 있습니다. 분명히 그것은 연속적이지 않습니다. 크기를 조정하는 간격을 설정해야합니다. –