Javascript Facebook开放图&x27;像按钮';-在';比如';
我想知道,我希望有一个带有Facebook的开放图(特别是“like”按钮)的登录页,我希望基本上可以将内容设置为显示:无(在用户喜欢某个页面之前,无法记住具体内容。例如,电子商务商店中的一个div,当用户喜欢该页面时,该div设置为display:block,用户可以兑换优惠券代码以获得折扣。) 我想能够做到这一点与div显示 我在Facebook开发者论坛上看到了这段代码: |(摘自) (注意:单击“喜欢”时触发的事件)Javascript Facebook开放图&x27;像按钮';-在';比如';,javascript,facebook,facebook-like,facebook-opengraph,Javascript,Facebook,Facebook Like,Facebook Opengraph,我想知道,我希望有一个带有Facebook的开放图(特别是“like”按钮)的登录页,我希望基本上可以将内容设置为显示:无(在用户喜欢某个页面之前,无法记住具体内容。例如,电子商务商店中的一个div,当用户喜欢该页面时,该div设置为display:block,用户可以兑换优惠券代码以获得折扣。) 我想能够做到这一点与div显示 我在Facebook开发者论坛上看到了这段代码: |(摘自) (注意:单击“喜欢”时触发的事件) //这将在用户“喜欢”任何类似的小部件时触发 FB.Event.su
//这将在用户“喜欢”任何类似的小部件时触发
FB.Event.subscribe('edge.create',函数(href,小部件){
Log.info('youliked'+href,widget);
});
是否可以修改此选项以有效地将div从display:none设置为display:block
非常感谢。只需将
Log.info()
调用替换为显示div
的JavaScript即可。在jQuery中:
<script>
// this will fire when any of the like widgets are "liked" by the user
FB.Event.subscribe('edge.create', function(href, widget) {
$('#yourdiv').show();
});
</script>
//这将在用户“喜欢”任何类似的小部件时触发
FB.Event.subscribe('edge.create',函数(href,小部件){
$('yourdiv').show();
});
只需将Log.info()
调用替换为显示div
的JavaScript即可。在jQuery中:
<script>
// this will fire when any of the like widgets are "liked" by the user
FB.Event.subscribe('edge.create', function(href, widget) {
$('#yourdiv').show();
});
</script>
//这将在用户“喜欢”任何类似的小部件时触发
FB.Event.subscribe('edge.create',函数(href,小部件){
$('yourdiv').show();
});
如果您特别想将div更新为显示:block
,请使用
<script>
// this will fire when any of the like widgets are "liked" by the user
FB.Event.subscribe('edge.create', function(href, widget) {
$('#divid').css('display','block');
});
</script>
//这将在用户“喜欢”任何类似的小部件时触发
FB.Event.subscribe('edge.create',函数(href,小部件){
$('#divid').css('display','block');
});
一个警告
您的edge.create
事件不会激发,除非您在呼叫中使用的URL与您试图激发此事件的URL完全相同
我在example.DEV(我的本地笔记本电脑DEV env)上运行了一个站点,它引用了example.com(live server)上的一个链接,FB.Event.subscribe()
块中的任何内容都不会运行,直到我上传了文件并从live server启动它
这可能就是为什么到目前为止它还不能正常工作的原因!如果您特别想将div更新为
display:block
,请使用
<script>
// this will fire when any of the like widgets are "liked" by the user
FB.Event.subscribe('edge.create', function(href, widget) {
$('#divid').css('display','block');
});
</script>
//这将在用户“喜欢”任何类似的小部件时触发
FB.Event.subscribe('edge.create',函数(href,小部件){
$('#divid').css('display','block');
});
一个警告
您的edge.create
事件不会激发,除非您在呼叫中使用的URL与您试图激发此事件的URL完全相同
我在example.DEV(我的本地笔记本电脑DEV env)上运行了一个站点,它引用了example.com(live server)上的一个链接,FB.Event.subscribe()
块中的任何内容都不会运行,直到我上传了文件并从live server启动它
这可能就是为什么到目前为止它还不能正常工作的原因!我找到了以下解决方案,但您需要jQuery来完成它(可能没有,但我以前就是这么做的) 代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript" src="facebook.js"></script>
<script src="jquery.min.js" type="text/javascript"></script>
</head>
<body>
<div id="fb-root"></div>
<script type="text/javascript">
<!--
window.fbAsyncInit = function() {
FB.init({appId: '133387220039676', status: true, cookie: true, xfbml: true});
FB.Event.subscribe('edge.create', function(href, widget) {
// Do something, e.g. track the click on the "Like" button here
$('#slidingDiv').show();
});
};
(function() {
var e = document.createElement('script');
e.type = 'text/javascript';
e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
e.async = true;
document.getElementById('fb-root').appendChild(e);
}());
//-->
</script>
<fb:like href="http://www.facebook.com/TheRightMind" layout="standard" show-faces="false" width="450" action="like" colorscheme="light"></fb:like>
<div id="slidingDiv" style="display:none;">
Fill this space with really interesting content that you can
</div>
</body>
</html>
无标题文件
用你能找到的真正有趣的内容填满这个空间
我找到了以下解决方案,但您需要jQuery来完成(可能没有,但我以前就是这么做的)
代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript" src="facebook.js"></script>
<script src="jquery.min.js" type="text/javascript"></script>
</head>
<body>
<div id="fb-root"></div>
<script type="text/javascript">
<!--
window.fbAsyncInit = function() {
FB.init({appId: '133387220039676', status: true, cookie: true, xfbml: true});
FB.Event.subscribe('edge.create', function(href, widget) {
// Do something, e.g. track the click on the "Like" button here
$('#slidingDiv').show();
});
};
(function() {
var e = document.createElement('script');
e.type = 'text/javascript';
e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
e.async = true;
document.getElementById('fb-root').appendChild(e);
}());
//-->
</script>
<fb:like href="http://www.facebook.com/TheRightMind" layout="standard" show-faces="false" width="450" action="like" colorscheme="light"></fb:like>
<div id="slidingDiv" style="display:none;">
Fill this space with really interesting content that you can
</div>
</body>
</html>
无标题文件
用你能找到的真正有趣的内容填满这个空间
验证喜欢该页面将触发该代码后(尝试控制台.log(“AOK!”)
),您可以使用以下代码显示
:
普通的旧JavaScript:
FB.Event.subscribe('edge.create', function(href, widget) {
document.getElementById("topsecret").style.display = "block";
});
<div id="topsecret" style="display:none;">
Content Goes Here
</div>
HTML:
FB.Event.subscribe('edge.create', function(href, widget) {
document.getElementById("topsecret").style.display = "block";
});
<div id="topsecret" style="display:none;">
Content Goes Here
</div>
您也可以考虑使用Ajax加载命令,因为否则当内容只被隐藏时,很容易使框出现。
FB.Event.subscribe('edge.create', function(href, widget) {
$("#topsecret").load("mycontent.html");
});
验证喜欢该页面将触发该代码后(尝试
console.log(“AOK!”)
),可以使用以下代码显示
:
普通的旧JavaScript:
FB.Event.subscribe('edge.create', function(href, widget) {
document.getElementById("topsecret").style.display = "block";
});
<div id="topsecret" style="display:none;">
Content Goes Here
</div>
HTML:
FB.Event.subscribe('edge.create', function(href, widget) {
document.getElementById("topsecret").style.display = "block";
});
<div id="topsecret" style="display:none;">
Content Goes Here
</div>
您也可以考虑使用Ajax加载命令,因为否则当内容只被隐藏时,很容易使框出现。
FB.Event.subscribe('edge.create', function(href, widget) {
$("#topsecret").load("mycontent.html");
});
我仍然有这个问题,我似乎无法找到任何解决方案。我知道这是一个巨大的要求这样一个无助的成员,但你可以提供div格式,以配合这段代码的工作吗?谢谢你的时间切伊。我仍然有这个问题,我似乎无法得到任何解决方案的工作。我知道对于这样一个无助的成员来说,这是一个巨大的要求,但是您是否可以提供div格式来伴随这段代码来工作呢?谢谢您的时间。