我有这个代码,假设工作,但不起作用。如果这对你有帮助,那就太好了。
<script src='http://connect.facebook.net/en_US/all.js'></script>
<p><a onclick='postToFeed(); return false;'><img src="images/fb.png" /></a></p>
<p id='msg'></p>
<script>
FB.init({appId: "338334836292077", status: true, cookie:
true});
function postToFeed() {
// calling the API ...
var obj = {
method: 'feed',
redirect_uri:'https://www.facebook.com/cryswashington?fref=ts',
link:'https://developers.facebook.com/docs/reference/dialogs/',
picture: 'http://fbrell.com/f8.jpg',
name: 'Facebook Dialogs',
caption: 'Reference Documentation',
description: 'Using Dialogs to interact with users.'
};
function callback(response) {
document.getElementById('msg').innerHTML = "Post ID: " + response['post_id'];
}
FB.ui(obj, callback);
}
</script>
我想在我的网站上添加facebook分享按钮,这应该只是将我的网站内容发布在墙上。谁想分享它。
我研究了很多但没有得到任何东西。请帮助我。
提前致谢。
答案 0 :(得分:208)
您不需要所有代码。您只需要以下几行:
<a href="https://www.facebook.com/sharer/sharer.php?u=example.org" target="_blank">
Share on Facebook
</a>
可以在https://developers.facebook.com/docs/reference/plugins/share-links/
找到文档答案 1 :(得分:24)
您可以使用facebook提供的异步Javascript SDK
来完成此操作查看以下代码
FB Javascript SDK初始化
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({appId: 'YOUR APP ID', status: true, cookie: true,
xfbml: true});
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
注意:请记住用您的Facebook AppId替换您的APP ID。如果您没有Facebook AppId并且您不知道如何创建,请check this
添加JQuery Library,我更喜欢Google Library
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js" type="text/javascript"></script>
添加共享对话框(您可以通过设置参数来自定义此对话框
<script type="text/javascript">
$(document).ready(function(){
$('#share_button').click(function(e){
e.preventDefault();
FB.ui(
{
method: 'feed',
name: 'This is the content of the "name" field.',
link: 'http://www.groupstudy.in/articlePost.php?id=A_111213073144',
picture: 'http://www.groupstudy.in/img/logo3.jpeg',
caption: 'Top 3 reasons why you should care about your finance',
description: "What happens when you don't take care of your finances? Just look at our country -- you spend irresponsibly, get in debt up to your eyeballs, and stress about how you're going to make ends meet. The difference is that you don't have a glut of taxpayers…",
message: ""
});
});
});
</script>
现在最后添加图片按钮
<img src = "share_button.png" id = "share_button">
有关更详细的信息。请click here
答案 2 :(得分:13)
您可以阅读有关分享按钮here on Facebook developers website
的更多信息工作JSFIDDLE
另请查看自定义Facebook分享按钮 JSFIDDLE
在打开<body>
标记
<div id="fb-root"></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";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
并在代码下方放置Facebook Share按钮
<div class="fb-share-button" data-href="https://developers.facebook.com/docs/plugins/" data-width="200" data-type="button_count"></div>
检查工作JSFIDDLE
答案 3 :(得分:4)
对于Facebook分享带图片没有 API 并使用#
深层链接到子页面,诀窍是将图像共享为picture=
变量mainUrl
将为http://yoururl.com/
var d1 = $('.targ .t1').text();
var d2 = $('.targ .t2').text();
var d3 = $('.targ .t3').text();
var d4 = $('.targ .t4').text();
var descript_ = d1 + ' ' + d2 + ' ' + d3 + ' ' + d4;
var descript = encodeURIComponent(descript_);
var imgUrl_ = 'path/to/mypic_'+id+'.jpg';
var imgUrl = mainUrl + encodeURIComponent(imgUrl_);
var shareLink = mainUrl + encodeURIComponent('mypage.html#' + id);
var fbShareLink = shareLink + '&picture=' + imgUrl + '&description=' + descript;
var twShareLink = 'text=' + descript + '&url=' + shareLink;
// facebook
$(".my-btn .facebook").off("tap click").on("tap click",function(){
var fbpopup = window.open("https://www.facebook.com/sharer/sharer.php?u=" + fbShareLink, "pop", "width=600, height=400, scrollbars=no");
return false;
});
// twitter
$(".my-btn .twitter").off("tap click").on("tap click",function(){
var twpopup = window.open("http://twitter.com/intent/tweet?" + twShareLink , "pop", "width=600, height=400, scrollbars=no");
return false;
});
答案 4 :(得分:1)
您可以使用带共享方法参数的FB.ui函数触发共享对话框以共享链接。通过执行完全重定向到URL,可在Facebook SDK for JavaScript,iOS和Android中使用此对话框。
您可以触发此通话:
FB.ui({
method: 'share',
href: 'https://developers.facebook.com/docs/', // Link to share
}, function(response){});
您还可以在此网址的页面上添加开放图元标记,以自定义共享回Facebook的故事。
请注意,只有当使用您的应用的用户通过Facebook登录验证您的应用时,才会显示response.error_message。
您也可以通过Javascript Facebook SDK直接与来电分享。
https://www.facebook.com/dialog/share&app_id=145634995501895&display=popup&href=https%3A%2F%2Fdevelopers.facebook.com%2Fdocs%2F&redirect_uri=https%3A%2F%2Fdevelopers.facebook.com%2Ftools%2Fexplorer
https://www.facebook.com/dialog/share&app_id={APP_ID}&display=popup&href={LINK_TO_SHARE}&redirect_uri={REDIRECT_AFTER_SHARE}
app_id =&gt;您应用的唯一标识符。 (必需)。
redirect_uri =&gt;用户单击对话框上的按钮后重定向到的URL。使用URL重定向时必需。
display =&gt;确定对话框的呈现方式。
如果您正在使用URL重定向对话框实现,那么这将是一个完整页面显示,显示在Facebook.com中。此显示类型称为页面。 如果您使用我们的iOS或Android SDK之一来调用对话框,则会自动指定并为设备选择适当的显示类型。 如果您使用的是Facebook SDK for JavaScript,对于登录您应用程序的用户而言,这将默认为模态iframe类型,或者在Facebook.com上的游戏中使用时默认为async,以及其他人的弹出窗口。如有必要,您还可以在使用Facebook SDK for JavaScript时强制使用弹出窗口或页面类型。 移动网络应用程序将始终默认为触摸显示类型。 分享参数
答案 5 :(得分:1)
对于您自己的特定服务器或不同的网页&amp;图像按钮你可以使用这样的东西(仅限PHP)
<a href="http://www.facebook.com/sharer/sharer.php?u=http://'.$_SERVER['SERVER_NAME'].'" target="_blank"><img src="http://i.stack.imgur.com/rffGp.png" /></a>
我不能与此分享这个片段,但你会明白这个想法......
答案 6 :(得分:0)
此Facebook page有一个用于创建各种共享按钮的简单工具。
例如,这是我得到的一些输出:
<div id="fb-root"></div>
<script async defer crossorigin="anonymous" src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v8.0" nonce="dilSYGI6"></script>
<div class="fb-share-button" data-href="https://www.mocacleveland.org/exhibitions/lee-mingwei-you-are-not-stranger" data-layout="button" data-size="small">
<a target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwww.mocacleveland.org%2Fexhibitions%2Flee-mingwei-you-are-not-stranger&src=sdkpreparse" class="fb-xfbml-parse-ignore">Share</a>
</div>