加载Facebook页面插件JavaScript异步

时间:2015-11-10 01:11:23

标签: javascript php jquery html facebook

根据Google Page Insights,加载自定义Facebook插件会降低网站速度。 Page Speed Insight显示:"启用压缩8 Facebook子JavaScript"在应修复菜单的引擎盖下。所以它肯定会提高网站加载速度。

以前的版本:

<div id='fb-root'/>
<script>
(function() {
    var e = document.createElement(&#39;script&#39;); e.async = true;
    e.src = document.location.protocol +
      &#39;//connect.facebook.net/en_US/all.js&#39;;
    document.getElementById(&#39;fb-root&#39;).appendChild(e);
  }());

  window.fbAsyncInit = function() {
    FB.init({appId: &#39;647606748639270&#39;, status: true, cookie: true,
             xfbml: true});

     _ga.trackFacebook();
  };
</script>

较新版本:

<div id='fb-root'/>
<script>
(function() {
var url = '//connect.facebook.net/en_US/all.js';
var iframe = document.createElement('iframe');
(iframe.frameElement || iframe).style.cssText = "width: 0; height: 0; border:   0";
 iframe.src = "javascript:false";
 document.getElementById('fb-root').appendChild(iframe);
 var doc = iframe.contentWindow.document;
 doc.open().write('<body onload="'+
'window.inDapIF = true;' +
'var js = document.createElement(\'script\');'+
'js.src = \''+ url +'\';'+
'document.body.appendChild(js);">');
doc.close();
}());

// async init once loading is done
window.fbAsyncInit = function() {
FB.init({xfbml: true});
};
</script>

所以我试图在我的网站上安装官方修改版的Facebook页面插件JavaScript但不幸的是它显示错误信息......

元素类型&#34;脚本&#34;必须由匹配的结束标记终止&#34;&#34;。

JavaScript的官方链接

https://www.facebook.com/note.php?note_id=10151176218703920

http://jsbin.com/axibow/10/edit?html,output

0 个答案:

没有答案