Facebook共享连接js非常慢

Facebook Share connect js is very slow

本文关键字:非常 js 连接 共享 Facebook      更新时间:2023-12-11

我使用的是这个片段:

function loadFacebook()
{
    var app_id = $('meta[property="fb:app_id"]').attr("content");
    $.ajax( {
        type: 'GET',
        url: '//connect.facebook.net/it_IT/all.js',
        timeout: 2000,
        dataType: 'script',
        cache: true,
        success:
            function() {
                FB.init({ appId: app_id, status: true, cookie: true, xfbml: true });
            }
        });
    var pathname = $(location).attr('href');
    $('#facebook-sharing').append('<div class="fb-share-button" data-href="'+pathname+'" data-width="140" data-type="button_count"></div>');
}

它似乎不会免费缓存,而且页面加载非常非常慢。我看到的其他网站似乎没有这个问题。

我知道还有其他类似的问题,但似乎没有什么能解决我的问题。非常感谢。

尝试使用getScript()方法。getScript()方法是异步的,因此您将传递一个匿名回调函数,在该函数中您可以像往常一样执行SDK初始化代码。

$(document).ready(function() {
  $.ajaxSetup({ cache: true });
  $.getScript('//connect.facebook.net/en_UK/all.js', function(){
    FB.init({
      appId: 'YOUR_APP_ID',
    });     
    $('#loginbutton,#feedbutton').removeAttr('disabled');
    FB.getLoginStatus(updateStatusCallback);
  });
});

来源:用于jQuery的JavaScript的Facebook SDK。