我有一个带有重写网址的动态页面.我想在其中添加一个facebook分享按钮.因此用户点击分享按钮即可共享页面.但facebook分享开发者页面要求提供特定网址.不确定如何共享动态生成的URL.
这里我发现一些代码来捕获网址.但我不知道,如何将其包含在Facebook代码中.
jQuery(document).ready(function() {
var href = jQuery(location).attr('href');
var url = jQuery(this).attr('title');
jQuery('#current_title').html(href);
jQuery('#current_url').html(url);
});
Run Code Online (Sandbox Code Playgroud)
HTML共享按钮的HTML部分
<div class="fb-share-button" data-href="http://developers.facebook.com/docs/plugins/" data-type="button"></div>
Run Code Online (Sandbox Code Playgroud)
请帮助
非常感谢
我目前在Facebook的FacePile代码中遇到错误,我对原因感到困惑.
facepile.php加载一个脚本,其中包含这些行(当漂亮打印时):
...
o = document.createElement('script');
o.src = l[n];
o.async = true;
o.onload = h;
o.onreadystatechange = function() {
if (o.readyState in c) {
h();
o.onreadystatechange = null;
}
};
d++;
a.appendChild(o);
...
Run Code Online (Sandbox Code Playgroud)
(a == document.body,d ++在这里无关紧要)
这段代码用src = http://static.ak.fbcdn.net/rsrc.php/v1/yW/r/pmR8u_Z_9_0.js或者同样神秘的东西加载一个脚本(文件名偶尔会改变).
在该脚本中,最顶部有这些线条(也是漂亮印刷时):
/*1331654128,176820664*/
if (window.CavalryLogger) {
CavalryLogger.start_js(["\/8f24"]);
}
window.__DEV__ = window.__DEV__ || 0;
if (!window.skipDomainLower && document.domain.toLowerCase().match(/(^|\.)facebook\..*/))
document.domain = window.location.hostname.replace(/^.*(facebook\..*)$/i, '$1');
function bagofholding() {
}
function bagof(a) {
return function() {
return a;
};
}
if (!Date.now)
Date.now = function …Run Code Online (Sandbox Code Playgroud) javascript facebook internet-explorer-9 facebook-social-plugins
我必须实现一个Facebook-Likebutton,其中url取自ajax请求...这意味着我在页面加载后设置了"href" - 属性.不幸的是,此时网址已经设置,所以当喜欢它时,它会将实际的页面网址作为网址...有没有办法刷新像按钮?
我按照这篇文章在我的应用程序中部署facebook share botton http://www.hyperarts.com/blog/tutorial-how-to-add-facebook-share-button-to-your-web-site-pages/
第一个问题是我无法通过post.id,post.captionFacebook的脚本.
第二个是Facebook墙上每个帖子的链接link: ' link to every {{post.id}}'.如果人们点击他们墙上共享的链接,它应该jum(自动滚动)到我的网站上的特定帖子,这是单页所以所有帖子都有相同的链接
非常感谢!
这是我的Angularjs控制器:
function MyController($scope) {
$scope.posts = [{"title": "AAtitle",
"content":"AAcontent",
"caption":"AAcaption",
"id":"adfddsf"dfsdfdsds
},
{"title": "BBtitle",
"content":"BBcontent",
"caption":"BBcaption",
"id":"dfgfddrggdgdgdgfd"
},
{"title": "CCtitle",
"content":"CCcontent",
"caption":"CCcaption",
"id":"dhgfetyhnncvcbcqqq"
}
]
}
Run Code Online (Sandbox Code Playgroud)
这是facebook SDK:
<div id="fb-root"></div>
window.fbAsyncInit = function() {
FB.init({appId: 'MY 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);
}());
Run Code Online (Sandbox Code Playgroud)
这是我的HTML …
javascript facebook-sharer facebook-social-plugins angularjs single-page-application
10月26日之后似乎没有评论出现在我的评论审核工具中.但是,评论会显示在页面上.
在网页上,我可以看到之后的评论(其中一些是我需要调节的垃圾邮件).
我在页面上有以下代码:
<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 = 'https://connect.facebook.net/en_GB/sdk.js#xfbml=1&version=v2.10&appId=xxxxx';
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<div class="fb-comments" data-href="xxxxx.com" data-numposts="7" data-order-by="reverse_time"></div>
Run Code Online (Sandbox Code Playgroud)
fb:admins和fb:app_id属性都已设置并显示在Open Graph Debugger中(我实际上删除了fb:admins属性,因为管理员已在审核工具中设置)
facebook facebook-javascript-sdk facebook-social-plugins facebook-comments
我在我的Facebook应用程序中使用社交评论插件.
在插件的文档中,它说可以在插件的设置部分禁用第三方登录.
如何使用其他登录提供程序使用户能够发表评论?
在插件的设置部分,您可以选择在评论框中启用第三方登录.目前,这将使用户能够使用Yahoo!,AOL或Hotmail帐户进行评论.
由于我能找到的与插件有关的唯一部分是审核工具,我假设这是"插件的设置部分".
这是我在应用程序的设置下单击时显示的屏幕:

我禁用了"其他登录提供程序"选项,但它仍出现在我的应用程序的注释框中.
也许有一个参数或方法可以用来实现这个或者我没有找到插件的正确设置部分.
我正在尝试在网站上实施Facebook注册.如果没有onvalidate参数,一切都会像人们期望的那样工作,但是当包含它时,一切似乎都会崩溃(没有抛出错误,表单什么都不做).
这是我的代码:
<center>
<fb:registration redirect-uri="http://im.localhost/register"
fields='[{"name":"name"},{"name":"username","description":"Website Username","type":"text"},{"name":"email"},{"name":"password","view":"not_prefilled"},{"name":"captcha","view":"not_prefilled"},{"name":"tos","type":"checkbox","description":"I accept the Terms of Service"}]' onvalidate='validate'>
</fb:registration>
</center>
<script>
function validate(form) {
console.log('Validation');
errors = {};
errors.tos = "You must accept the terms of service";
return errors;
}
</script>
<!-- at end of page: -->
<script>
// ...
FB.init({
appId: '<?php echo IM_Facebook::getAppIDStatically(); ?>',
channelUrl: '<?php echo $this->serverUrl().$this->baseUrl('/xsrd.html'); ?>',
status: true,
cookie: true,
xfbml: true
});
// ...
</script>
Run Code Online (Sandbox Code Playgroud)
在点击表单的提交按钮时,从不调用console.log函数.(但是,否则它几乎正常 - 弹出"你已经使用abc注册"显示并在我点击确认时消失 - 但没有其他事情发生.
如果我在没有此参数的情况下将自定义字段(用户名)留空,Facebook会要求我填写它.如果我将此参数留空,则不会调用validate函数,也不会显示任何错误.无论哪种方式,根据这种形式应该总是显示的TOS错误永远不会出现.
类似问题的问题涉及网站URL与应用程序的URL不匹配.在这种情况下,情况并非如此.
对于域名澄清,我使用的域名为"im.localhost",无法通过互联网访问.我不相信这是一个问题,因为如果没有onvalidate注册表单工作,登录系统我已经实现了工作.但是,使用onvalidate,注册表将根本不再起作用.
javascript facebook registration xfbml facebook-social-plugins
我使用的是标准Feed Dialog的Facebook的分享我的网站上的帖子.这个问题是由于问题导致我无法正常工作redirect_uri.这很奇怪,因为我拥有应用程序,应用程序ID是正确的,URL是正确的...这可能是什么问题?我得到的错误是:需要有效的重定向URI.
这是我正在使用的代码:
<a href=https://www.facebook.com/dialog/feed?app_id=9999999999999&link=http://hereismylink.com/todays/&picture=http://fbrell.com/f8.jpg&name=%TITLE%&caption=testing1234&description=blablabla&redirect_uri=http://hereismylink.com>Share on Face</a>
Run Code Online (Sandbox Code Playgroud)
PS:redirect_uri和app_id是虚拟文本,通常,它们是我网站上正确的数字和字母.我不想在这里做广告.
仅供参考:sandbox mode被关闭了
redirect facebook facebook-sharer facebook-graph-api facebook-social-plugins
我的活动是在崩溃时抛出此错误:
java.lang.RuntimeException: Unable to resume activity {com.beerportfolio.beerportfoliopro/com.example.mike.beerportfoliomaterial.MainDrawer2}: java.lang.IllegalArgumentException: Both context and applicationId must be non-null
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3069)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3098)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2469)
at android.app.ActivityThread.access$900(ActivityThread.java:172)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1308)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:146)
at android.app.ActivityThread.main(ActivityThread.java:5653)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107)
at dalvik.system.NativeStart.main(NativeStart.java)
Caused by: java.lang.IllegalArgumentException: Both context and applicationId must be non-null
at com.facebook.AppEventsLogger.activateApp(AppEventsLogger.java:273)
at com.facebook.AppEventsLogger.activateApp(AppEventsLogger.java:260)
at com.example.mike.beerportfoliomaterial.MainDrawer2.onResume(MainDrawer2.java:179)
at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1198)
at android.app.Activity.performResume(Activity.java:5618)
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3059)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3098)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2469)
at android.app.ActivityThread.access$900(ActivityThread.java:172)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1308)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:146)
at android.app.ActivityThread.main(ActivityThread.java:5653)
at java.lang.reflect.Method.invokeNative(Method.java)
at …Run Code Online (Sandbox Code Playgroud) facebook ×7
javascript ×4
android ×1
angularjs ×1
comments ×1
jquery ×1
redirect ×1
registration ×1
xfbml ×1