以下是我在我的页面上实现 Facebook Feed Dialog 的方法:
HTML 标记:
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://ogp.me/ns/fb#" xmlns:og="http://opengraphprotocol.org/schema/">
JavaScript:
(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=***************";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
FB.init({
appId: '***************',
display: 'popup',
status: true,
cookie: true,
xfbml: true,
oauth: true,
method: 'send'
});
发送按钮:
<a onclick="javascript:twitter(this); return false;" href="https://www.facebook.com/dialog/feed?display=popup&app_id=***************&name=<name>&link=<link>&redirect_uri=<uri>">
<div class="fb-container"></div>
</a>
在这里我使用 Twitter 的弹出脚本,因为display:popup
不起作用,不知道为什么。
然而弹出窗口出现,我发送提要。但后来我被重定向到redirect_uri
. 我不想要这个。我只想在单击发送或取消按钮后关闭弹出窗口。我想检测一个按钮是否被点击然后尝试window.close;
但没有成功,因为它是一个新窗口(弹出窗口)。
有任何想法吗?