0

Canvas의 크기를 조정하려고하지만 JS SDK 또는 고정 높이 설정을 사용할 수 없습니다. 크롬의 콘솔에서 나는 참조 :Javascript SDK 오류 및 Canvas 크기 조정 문제

Uncaught TypeError: Object #<Object> has no method 'createClass2' on XFBML:13 

파이어 폭스 :

FB.Type.createClass2 is not a function on XFBML:13 

나는 폭 유체에 내 응용 프로그램 캔버스 설정을 가지고 있고, (아무 효과가없는) 1200 픽셀로 고정. 참고 : 설정 가능한 옵션이 없습니다.

내 JS SDK 포함입니다. 내가 여기에 대한 도움을 주셔서 감사합니다 것 바로 < 머리 > 태그

<script> 
    window.fbAsyncInit = function() { 
    FB.init({ 
     appId  : '188042251295955', // App ID 
     status  : true, // check login status 
     cookie  : true, // enable cookies to allow the ... 
     xfbml  : true // parse XFBML 
    }); 

    // Additional initialization code here 
    FB.Canvas.setAutoGrow(100); 
    }; 

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

후입니다. 오류나 누락 된 설정을 발견 할 수 있다면 좋을 것입니다.

+0

어떤 기능이 실제로 어떻게 부릅니까, 오류를 가져올 때? – kirilloid

+0

FB.Canvas.setAutoGrow (100) 만 가능합니다. 내가 말할 수있는 한, 나는 전화를 걸지 않을거야. 나는 fbAsyncInit가 결코 호출되지 않기 때문에 스크립트를로드 할 때 오류가 있다고 확신한다. – Eric

+0

확실한가요? 다른 콜백이 아닌 그냥 호출 할 수 있습니까? – kirilloid

답변

0

여기에서 문제를 해결했습니다. JS SDK는 페이지에 낡은 스크립트가 있기 때문에 스크립트가로드 될 때 오류가 발생했습니다.

# 1 : 이전 공유 버튼 코드.

function facebookShare(d, s, id) { 
    var js, fjs = d.getElementsByTagName(s)[0]; 
    if (d.getElementById(id)) {return;} 
    js = d.createElement(s); js.id = id; 
    js.src = "//connect.facebook.net/en_US/all.js#xfbml=1"; 
    fjs.parentNode.insertBefore(js, fjs); 
} 
//initialize facebookShare 
facebookShare(document, 'script', 'facebook-jssdk'); 

# 2 : (JS SDK를 사용되지 않음) 페이스 북 FeatureLoader

<script src="http://static.ak.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php" type="text/javascript"></script>