Uma*_*oon 12 facebook facebook-javascript-sdk
我想在facebook iframe应用程序中使用以下代码显示"Post to Your Wall"提要对话框:
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js">
</script>
<script>
FB.init({
appId:'249725835046216', cookie:true,
status:true, xfbml:true
});
FB.ui({ method: 'feed',
message: 'Facebook for Websites is super-cool',
name: 'Facebook Dialogs',
link: 'http://developers.facebook.com/docs/reference/dialogs/',
picture: 'http://fbrell.com/f8.jpg',
caption: 'Reference Documentation',
description: 'Dialogs provide a simple, consistent interface for applications to interface with users.'
});
</script>
Run Code Online (Sandbox Code Playgroud)
问题是它出现在这样一个新的弹出窗口中:

如果没有出现在弹出窗口中,而不是像这样出现:

我不希望Feed对话框出现在新的弹出窗口中,因为在大多数现代Web浏览器中都会阻止弹出窗口.我不知道为什么会这样.请帮忙.
如果用户未授权您的应用程序,我很确定您会弹出一个弹出窗口.出于安全原因,Facebook让它以这种方式工作.如果您首先提示授权,那么您应该获得内联对话框.
请注意,授权请求本身就是一个弹出窗口,但您只需要进行一次.在Facebook应用程序中,我有这样的方式,你想要的方式.随意抓取javascript代码,它不是特定于应用程序.
试试这个,把FB.ui放在FB.getLoginStatus里面:
FB.getLoginStatus(function(response) {
if (response.authResponse) {
FB.ui({
method: 'feed',
...
display: 'dialog'
});
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
25741 次 |
| 最近记录: |