facebook facebook-like facebook-graph-api facebook-javascript-sdk facebook-php-sdk
在我的应用程序中,我有一个小的自定义按钮,只显示一个FB图标和指向业务页面的链接.我希望按钮执行Like,以便页面上的我的号码增加.
到目前为止,我只看到一种从FB获取Like图形的方法,其中包含一个链接.我如何跳到喜欢的?
我正在尝试使用CSS定位类似Facebook的按钮(包括"发送"按钮).下面是Facebook提供的代码以及我添加的"喜欢"类别的div标签.下面是相应的CSS.我申请的CSS不起作用; 它似乎被Facebook代码中固有的样式所覆盖.
如何使用CSS定位类似Facebook的按钮?
提前致谢,
约翰
<div class="like">
<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>
</div>
Run Code Online (Sandbox Code Playgroud)
CSS:
.like {
position:absolute;
width:310px;
left:30px;
top:278px;
color: #004993;
font-family:Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
height: 15px;
padding-bottom: 0px;
padding-left: 5px;
padding-top: 2px;
}
Run Code Online (Sandbox Code Playgroud) 我的网站上有更多类似Facebook的按钮,我想知道是否有任何方法可以跟踪其中的哪一个被使用.
有没有办法做到这一点?
这是我在我网站上的代码:
<iframe src="http://www.facebook.com/plugins/like.php?app_id=5766773068&href&send=false&layout=standard&width=47&show_faces=false&action=like&colorscheme=light&font&height=35" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:47px; height:35px;" allowTransparency="true"></iframe>
Run Code Online (Sandbox Code Playgroud)
实现的示例URL是:
每当我按下'喜欢'时,似乎什么都没发生,如果我扩大帧大小以查看发生了什么,它只是说'错误'.
我一直在尝试使用:
http://developers.facebook.com/docs/reference/plugins/like/
但它真的很有气质,有时甚至不给我代码.我必须指定URL吗?我认为不需要"喜欢"当前页面.
请注意我的主页上的like按钮工作正常,但指定了网址.那么有谁能看到我做错了什么?
我正在尝试将Facebook Like按钮添加到网站,但它从未出现过.
这是我页面的相关细节:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:fb="http://www.facebook.com/2008/fbml"
xmlns:og="http://opengraphprotocol.org/schema/" dir="ltr" lang="en" xml:lang="en">
<head id="Head1" runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta property="og:title" content="[____].com" />
<meta property="og:type" content="blog" />
<meta property="og:url" content="http://www.[____].com/" />
<meta property="og:image" content="http://[____].gif" />
<meta property="og:site_name" content="[____].com" />
<meta property="fb:app_id" content="[____]" />
<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=News+Cycle" />
<link rel="Stylesheet" type="text/css" href="../../Content/css/[____].min.css" media="screen, projection" />
</head>
<body>
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function () {
FB.init({
appId: '[____]',
status: true,
cookie: true,
xfbml: …Run Code Online (Sandbox Code Playgroud) 有很多POST表明,一旦用户点击你的Like按钮,它就会产生一个你可以像下一个代码一样捕获的事件:
Run Code Online (Sandbox Code Playgroud)window.fbAsyncInit = function() {
//Your app details here
FB.init({appId: '110981675649741', status: true, cookie: true, xfbml: true});
FB.Event.subscribe('edge.create', function(href, widget) {
alert('You just liked '+href);
});
FB.getLoginStatus(function(response) {
Run Code Online (Sandbox Code Playgroud)
现在看来,这不起作用.
有谁知道为什么?Facebook团队是否改变了您举办此类活动的方式?
我有一个没有SDK的facebook按钮:
<fb:like href="<%= @canonical_url %>" send="" layout="button_count"></fb:like>
<div id="fb-root"> </div>
<script>
// facebook recommend button
window.fbAsyncInit = function() {
FB.init({appId: 'myappid', status: true, cookie: true, xfbml: true});
};
(function() {
// delay to simulate slow loading of Facebook library - remove this setTimeout!!
var t = setTimeout(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol + '//connect.facebook.net/<%= locale_og_tag %>/all.js';
document.getElementById('fb-root').appendChild(e);
}, 0);
}());
</script>
</div>
Run Code Online (Sandbox Code Playgroud)
我更改页面时没有重新加载facebook按钮,然后在我运行的javascript文件中:
if (typeof (FB) != 'undefined') {
FB.init({ status: true, cookie: true, …Run Code Online (Sandbox Code Playgroud) 我觉得这应该很容易,但我无法得到任何工作.
我在Facebook上为我的网站创建了一个应用程序.我已经设置了我的网站网址并公开了我的应用.
根据说明,我应该在我的顶部附近添加此代码 body
<script>
window.fbAsyncInit = function() {
FB.init({
appId : 'MY_APP_ID',
xfbml : true,
version : 'v2.2'
});
};
(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/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
Run Code Online (Sandbox Code Playgroud)
然后我可以嵌入这样的插件:
<div
class="fb-like"
data-share="true"
data-width="450"
data-show-faces="true">
</div>
Run Code Online (Sandbox Code Playgroud)
当我这样做时,我没有看到任何内容fb-like div.
我挖得更深一些,似乎sdk.js应该由第一位代码引入的文件不是.相反,//connect.facebook.net/en_US/sdk.jsURL返回307 Internal Redirect到about:blank.
我已经清除了我的缓存,我已经尝试了这个代码localhost以及我的实际域名,我更改了站点URL以匹配.
我究竟做错了什么?
我试图在Objective C应用程序中实现.如果我没有登录Facebook,则在点击"赞"按钮后,应用程序会打开登录屏幕.我会登录我的帐户.然后屏幕变成浅灰色带有Facebook的灰色标志一段时间(之前有2个很快显示灰色的Facebook屏幕),然后我被重定向回我的应用程序.如果我在运行应用程序时登录Facebook,除了没有显示登录屏幕外,一切都是相同的.
所以我的问题是,我没有得到正确的确认对话框,该对话框应该在登录FB帐户后出现,我被重定向回我的应用程序.喜欢不放.
导致这种行为的原因是什么?
我已将所有需要的3行放入.plist中,这就是我创建的按钮(p_webView是我的UIWebView的子类):
if (p_webView.fbLikeButton == nil) {
p_webView.fbLikeButton = [[FBSDKLikeControl alloc] init];
}
p_webView.fbLikeButton.objectID = p_webView.article.url;
[p_webView.fbLikeButton setFrame:CGRectMake(p_webView.fbLikeButton.frame.origin.x, height + 5, p_webView.fbLikeButton.frame.size.width, p_webView.fbLikeButton.frame.size.height)];
[p_webView.fbLikeButton setCenter:CGPointMake(p_webView.frame.size.width / 2, p_webView.fbLikeButton.center.y)];
[p_webView.scrollView addSubview:p_webView.fbLikeButton];
Run Code Online (Sandbox Code Playgroud)
更多信息 - 我在模拟器上试过这个(我没有FB应用程序,所以它只使用Safari).登录后,我有错误:
"您请求的页面目前无法显示.它可能暂时不可用,您点击的链接可能已损坏或已过期,或者您可能无权查看此页面."
由于可能很难找到解决方案 - 需要在FB应用程序中作为管理员,开发人员或测试人员,以便在测试未经Apple批准使用本机按钮的应用程序时使用类似按钮.
facebook-like ×10
facebook ×8
javascript ×2
css ×1
delphi ×1
html ×1
hyperlink ×1
iframe ×1
ios ×1
objective-c ×1