이 블로그 기사가 도움이된다는 사실을 발견했습니다. http://dominicminicoopers.blogspot.com/2012/03/assigning-url-for-facebook-comments.html
약간의 코드가 있습니다. FB 객체가 완전히 초기화되면 callAjax가 발생해야합니다. FB의로드와 초기화를 확실히하기 위해 window.fbAsyncInit 함수 내부에 배치했습니다.
<div id="fb-root"></div>
<div id="myCommentsDiv"></div>
<script>
(function(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&appId=YOUR_APP_ID";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
window.fbAsyncInit = function() {
FB.init({
appId : 'YOUR_APP_ID', // App ID
channelUrl : '//WWW.YOUR_DOMAIN.COM/channel.html' // Channel File
});
callAjax();
};
function callAjax(yourData) {
$.ajax({
url: "YOUR_AJAX_URL",
data: yourData,
success: function(){
var mydiv = $('#myCommentsDiv');
mydiv.html('<div class="fb-comments" href="' + document.location.href + '" posts="2" width="470">');
FB.XFBML.parse(mydiv[0]);
}
});
}
};
</script>
"FB.XFBML.parse();"가 표시되지 않습니다. ajax.html 또는 ax.html에 있습니다. 또한 FB.init도 표시되지 않습니다. 이상적으로 AJAX 컨텐츠를 페이지에 렌더링 한 후 FB.XFBML.parse를 실행하면 완벽하게 정상적으로 작동합니다. 우리는 많은 응용 프로그램에서 그것을 사용했습니다. – Shreeni
감사합니다. Shreeni, 솔직히 말해서 어디에 넣어야할지 모르겠군요. (ax.html 페이지 안에 위치해야한다고 생각했던 곳에서 일하고 싶지 않았기 때문에). 당신이나 다른 사람이이 Ajax 호출 (Trigger page + Called page)을 함께 묶는 방법에 대한 간단한 예제가 없을 것입니다. – Herman