example.com/pagetab
에서 실행될 때 invite 버튼 (일명 FB.ui -> apprequests)이있는 페이지 탭 응용 프로그램이 있습니다 (즉, FB.ui 친구 선택기 창 등)하지만 내 애플 리케이션의 pagetab을 가리켜 페이스 북에서 iframe으로로드하면 아무 일도 일어나지 않습니다. 처음에는 어떤 문서가 준비되었는지 알지 못해서 jquery로 연결되지 않은 버튼에 문제가 있다고 생각했지만 onclick
을 사용하고 Chrome 콘솔 (iframe의 범위에 있음)에서 명령을 입력하는 것으로 전환했지만 아무것도 표시하지 않았습니다. 이런 일이 벌레일까요, 아니면 제가 빠진 것이 있습니까?FB.ui 페이지 탭에서 apprequest 작동하지 않습니다
최소 코드 : 페이지에 다음
window.fbAsyncInit = function() {
FB.init({
appId : '123456789', // App ID
channelUrl : '//fbjscache.php', // Channel File
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
}); };
(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));
function sendInvite() {
console.log("Inviting...");
FB.ui({method: 'apprequests',
title: 'Check out this great app!',
message: 'Join the fun!',
}, inviteCallback);
}
<a href="javascript:void(null)" class="invite" onclick="sendInvite()"><div class="facebookButton">Invite</div></a>
이 코드 작동 정확히 페이지가 바로로드와 아무 때하지 않습니다 때 (귀여운 친구 선택기 대화 상자를 팝업) 예상대로 iframe에서로드됩니다. 이 버그 또는 일부 숨겨진 된 설정/JS 잡동사니가 내가 잡을 수있어?
는function sendInvite() {
FB.ui({method: 'apprequests',
title: 'Check out this great app!',
message: 'Join the fun!',
display: 'popup'
}, inviteCallback);
}
이 동작에 대해 명시 적입니다 : 관련 질문을 발견 한 후