标签: facebook-javascript-sdk

使用其他按钮 Javascript 触发 fb:login-button

我想触发fb:login-button

<fb:login-button show-faces="true" width="200" max-rows="1"></fb:login-button>
Run Code Online (Sandbox Code Playgroud)

带有第二个按钮。为什么?我无法调整 Facebook 的 css,我想要一个带有自定义图像的精美按钮来替换它。我的大问题是我不知道 FB 按钮的 ID 是什么,而且我不能给它一个。

我的错误代码:

<script>
    function Ffirst()
    {
    alert("first");
    $("fb:login-button").click(); 
    //$("fb:login-button").trigger("click"); //doesn't work eiter
    }
</script>

<input type="submit" onclick="Ffirst()" name="savebutton" id="first" />
<fb:login-button show-faces="true" width="200" max-rows="1"></fb:login-button>
Run Code Online (Sandbox Code Playgroud)

FTR: 这就是我按下时发生的情况the fb:login-button

FB.Event.subscribe('auth.authResponseChange', function(response) {
    // Here we specify what we do with the response anytime this event occurs. 
    if (response.status === 'connected') {
          testAPI();
    }

    } else if (response.status === 'not_authorized') {
      FB.login();

    } else {
          FB.login();
    }
  }); …
Run Code Online (Sandbox Code Playgroud)

facebook button facebook-javascript-sdk facebook-login

2
推荐指数
1
解决办法
4528
查看次数

添加 Facebook SDK 后加载时间更长

我正在为我的网站添加 Facebook 社交按钮。你可以在这里查看网站。

我是 Facebook API 的初学者,但是在页脚中添加代码后,网站的加载时间要长得多。

我通过谷歌做了一些研究,但没有找到任何好的解决方案。我曾尝试添加开源 jQuery 社交插件,但这并不如我所愿。

我希望能够使用默认的 Facebook 点赞/分享按钮(当前位于页脚)。

例如,有什么方法可以减少我使用 jQuery 添加的当前代码的加载时间?或者有没有其他方法可以让我在不影响加载时间的情况下保留默认的 Facebook 点赞/分享按钮?

这是我在<body>标签后添加的当前 JavaScript 代码:

<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId      : 'your-app-id',
      xfbml      : true,
      version    : 'v2.3'
    });
  };

  (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)

这是页脚处的 HTML 代码:

<li><div class="fb-like" data-href="https://developers.facebook.com/docs/plugins/" data-layout="button_count" data-action="like" data-show-faces="false" data-share="true"></div></li>
Run Code Online (Sandbox Code Playgroud)

提前致谢!

html jquery facebook-javascript-sdk

2
推荐指数
1
解决办法
2714
查看次数

使用营销 API 上传离线转化数据时 Facebook 错误 #100

我正在使用 Facebook Marketing API 上传离线转化数据。

附加的代码一直工作到大约 2 周前,现在报告以下错误。

{"error":{"message":"(#100) 需要参数数据","type":"OAuthException","code":100,"fbtrace_id":"HkpzkWB1I5g"}}

我不明白为什么它应该在按预期工作这么长时间后停止工作。我不知道如何修复它。有任何想法吗?

$data=array();
			$data["match_keys"]["email"]=$emails;
			$data["match_keys"]["phone"]=$mobiles;
			$data["match_keys"]["fn"]=hash("sha256",$first_name);
			$data["match_keys"]["ln"]=hash("sha256",$last_name);
			$data["match_keys"]["ln"]=hash("sha256",$last_name);
			$data["match_keys"]["ct"]=hash("sha256",$suburb);
			$data["match_keys"]["zip"]=hash("sha256",$postcode);
			$data["match_keys"]["country"]=hash("sha256","Australia");
			$data["event_time"] = strtotime($order_date);
			$data["event_name"] = "Purchase";
			$data["currency"] = "AUD";
			$data["value"] = $order_total;
			$data['order_id']=$order_id;

$access_token = '<access_token_0>'; 

// PURCHASE DATA
$data_json = json_encode(array($data));
$fields = array();
$fields['access_token'] = $access_token;
$fields['upload_tag'] = uniqid() // You should set a tag here (feel free to adjust)
$fields['data'] = $data_json;



$ch = curl_init();
curl_setopt_array($ch, array(
  // Replace with your offline_event_set_id
  CURLOPT_URL => "https://graph.facebook.com/v2.12/1696501357346693/events", 
  CURLOPT_RETURNTRANSFER => …
Run Code Online (Sandbox Code Playgroud)

facebook facebook-graph-api facebook-javascript-sdk facebook-php-sdk

2
推荐指数
1
解决办法
2709
查看次数

此调用需要页面访问令牌

我正在尝试使用 facebook 登录,已完成。我需要获取用户信息,例如姓名、电子邮件、家乡、位置、性别、profile_pic。但我只能获取登录用户的用户名。我还向 api 添加了 fields 参数。您可以在下面的代码中看到这一点。

<div id="container"></div>
<script>
 var accessToken;
 window.fbAsyncInit = function() {
   FB.init({
    appId      : 'App Id',
    cookie     : true,
    xfbml      : true,
    version    : 'v3.1'
   });

   FB.AppEvents.logPageView();   

   function getuserProfile() {
    FB.api('/me?fields=id,name,email,birthday,gender,hometown,location,profile_pic', {access_token : accessToken }, function (response){
      console.log(response);
    });
 }  

FB.login(function(response) {
  if (response.status === 'connected') {
    accessToken = response.authResponse.accessToken;
    getuserProfile();
  } else {
    console.log('not connected');
  }
}, {scope: 'email'});  
};

(function(d, s, id){
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); …
Run Code Online (Sandbox Code Playgroud)

facebook-graph-api facebook-javascript-sdk

2
推荐指数
1
解决办法
2982
查看次数

Facebook Canvas iFrame中的Fancybox定位

好的,所以我有一个iframe画布应用程序,其高度设置为"可设置",facebook javascrip sdk调用FB.Canvas.setSize(); FB.Canvas.setAutoGrow(); .这些工作完美,因为iframe根据其内容设置为某个像素高度.

问题是当我打电话给Fancybox时,它根据这个高度定位自己.我知道这正是它应该做的事情,因为fancybox jQuery返回视口:

(jquery.fancybox-1.3.4.js最新版本的第673行):

_get_viewport = function() {
return [
    $(window).width() - (currentOpts.margin * 2),
    $(window).height() - (currentOpts.margin * 2),
    $(document).scrollTop() + currentOpts.margin
];
},
Run Code Online (Sandbox Code Playgroud)

但问题是,对于很多观众而言,iframe将比浏览器窗口更长.因此,Fancybox将自己置于iframe中,并且最终只能被大多数观众看到.(即iframe高度为1058px,用户浏览器仅为650px).

有没有办法让fancybox只计算物理浏览器的高度?或者我是否需要更改我的Facebook画布应用程序中的某些设置才能使其正常工作?

我喜欢唯一的滚动条是Facebook上的那个(父母,如果你愿意的话).

所有建议非常感谢!

facebook fancybox facebook-iframe facebook-javascript-sdk facebook-canvas

1
推荐指数
2
解决办法
4655
查看次数

使用FB.ui时分享指向帖子的链接

我为FB制作了一个小应用程序,它使用FB.ui来允许用户在墙上分享它.我希望共享帖子在"评论"和"赞"旁边显示"分享"链接,就像在任何普通的墙贴上一样.

有没有办法用FB.ui做到这一点?

或者是否还有其他一些方法可以让我在壁柱上定义自定义图像,标题,描述等?

我目前的代码:

function share(name, description) {
        FB.ui({
            method: 'feed',
            name: name,
            picture: '/img/fb.png',
            link: url,
            caption: '',
            message: '',
            description: description
            }, function() {
            });
    }
Run Code Online (Sandbox Code Playgroud)

facebook facebook-wall facebook-javascript-sdk fb.ui

1
推荐指数
1
解决办法
9068
查看次数

使用facebook javascript sdk来处理fql查询

我刚刚使用JavaScript SDK在我的网站上实现了Facebook连接.现在我想处理一个fql查询.

所以我有两个问题:

  1. 是否可以只使用JavaScript fql作为" SELECT id, name FROM user WHERE uid IN (SELECT uid1 FROM friends WHERE uid2=me())"?

  2. 因为当我使用facebook doc尝试一些PHP SDK代码时

PHP:

$app_id = 'MY_ID';
$app_secret = 'MY_APP_SECRET';
$my_url = 'POST_AUTH_URL';
$code = $_REQUEST["code"];
Run Code Online (Sandbox Code Playgroud)

$_REQUEST["code"]通常不被识别,我不知道什么是" 'POST_AUTH_URL'",因为我没有使用PHP SDK来处理Facebook连接.有没有人有想法?

facebook facebook-graph-api facebook-javascript-sdk

1
推荐指数
2
解决办法
1万
查看次数

Facebook使用javascript api在页面中自动发送帖子

如何在Facebook页面发布Feed?我已经完成了我的墙贴,但我不知道如何使用javascript api在页面中发布墙贴.其实,我想要在我的Facebook墙上发帖

我从facebook api找到了代码.请帮忙.

facebook facebook-javascript-sdk

1
推荐指数
1
解决办法
9030
查看次数

我可以在自己网站的子域名上使用我的授权facebook应用程序吗?

我们的许多用户目前使用facebook connect登录我们的网站www.mysite.com.我们在"subdomain.mysite.com"上有一个相关的应用程序.我们希望现有用户能够使用子域上的facebook连接进行登录.有没有办法做到这一点?

我发现这个相关的SO问题只有一个答案声称它是不可能的,我们必须创建一个用户必须单独授权的第二个应用程序.但是,我想100%确认在放弃之前无法从子域登录.有任何变通方法吗?

facebook facebook-javascript-sdk facebook-authentication

1
推荐指数
1
解决办法
3513
查看次数

未捕获的错误:发生了缩小的异常[Facebook登录]

我正在尝试将我的网站与facebook登录集成.我已经按照Facebook(快速入门)提供的所有文档进行了操作.这是我的代码

function init() {   
    function checkLoginState() {
      FB.getLoginStatus(function(response) {
          if(response.status=="connected"){
            var fbUser = response.authResponse.userID;
            var fbAccess = response.authResponse.accessToken;
            var data = new FormData();
            data.append('fbUser',fbUser);
            data.append('fbAccess',fbAccess);
            callAjax('dologinfacebook',data);
          }
      });
    }
    checkLoginState();
}

window.fbAsyncInit = function() {
  FB.init({
    appId      : 'myappid',
    xfbml      : true,
    version    : 'v3.0'
  });

  init();
};

(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'));
Run Code Online (Sandbox Code Playgroud)

它工作得很好,我收到的响应没有任何问题,但在我的控制台结束时.我收到以下错误.

B5sq21HbPZ9.js:44 Uncaught Error: Minified exception occurred; …
Run Code Online (Sandbox Code Playgroud)

facebook facebook-javascript-sdk

1
推荐指数
1
解决办法
757
查看次数