这段代码什么也不做。我用我的应用程序 ID 替换了 YOUR_APP_ID,将此代码输入到新文件中,但它不会产生任何输出。我错过了什么吗?
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js">
</script>
<script>
FB.init({
appId:'YOUR_APP_ID', cookie:true,
status:true, xfbml:true
});
FB.ui({ method: 'apprequests',
message: 'Here is a new Requests dialog...'});
</script>
我从这里得到: https://developers.facebook.com/blog/post/453
更新: 代码对于 Canvas 非常有效,但对于页面选项卡,只需加载“向 friend 推荐”对话框并退出而不发送邀请。
最佳答案
可能会发生以下几种情况:
1) 弹出窗口已被阻止
要解决此问题,您需要根据用户操作触发请求。否则,大多数浏览器会阻止页面加载时的自动弹出窗口。试试这个:
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<a href="#" onclick="apprequest()">Do request</a>
<script>
FB.init({appId:'YOUR_APP_ID', cookie:true,status:true, xfbml:true});
function apprequest () {
FB.ui({ method: 'apprequests',
message: 'Here is a new Requests dialog...'});
}
</script>
另一个技巧是强制它使用不被浏览器阻止的“iframe”显示方法(而不是弹出窗口):
FB.ui({ method: 'apprequests','display':'iframe',
message: 'Here is a new Requests dialog...'});
2) FB JS 库尚未加载
如果您使用asynchronous loading,这实际上只会成为一个问题。技术,您不在本示例中。但是,如果您在 JavaScript 控制台中看到错误“FB 未定义”,那么您只需确保在用户事件上触发请求弹出窗口(如上面的链接),或者在异步回调。
祝你好运!
关于facebook - 请求对话框代码不执行任何操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8366150/