所以今天我发现了这段令人敬畏的代码,可以让我的网站更快。实际上,点击的任何链接几乎都是即时的。它被称为InstaClick(http://instantclick.io/)。我安装了它,一切都很好..除了Facebook Like和Twitter Tweet按钮突然没有显示出来。
我在http://instantclick.io/scripts上搜索了他们的文档以找到解决方案,并发现可以通过更改.on('更改')代码来实现。但问题是,Facebook脚本:
<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 = "//connect.facebook.net/en_US/sdk.js#xfbml=1&appId=XXXXXXXXXXXXXXX&version=v2.0";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
和Twitter脚本:
<script type="text/javascript">
window.twttr = (function (d, s, id) {
var t, js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src= "https://platform.twitter.com/widgets.js";
fjs.parentNode.insertBefore(js, fjs);
return window.twttr || (t = { _e: [], ready: function (f) { t._e.push(f) } });
}(document, "script", "twitter-wjs"));
</script>
似乎没有使用这些代码来启动它。有没有人找到办法让这个工作? InstantClick似乎是一种加快网站速度的好方法,如果它与推特和Facebook合作,它可能会彻底改变互联网的运作方式。
更新#1:
我发现了如何通过包含它来修复Twitter:
<script type="text/javascript" async defer src="//platform.twitter.com/widgets.js"></script>
但是以同样的方式包括Facebook sdk.js并不起作用。有什么想法吗?
更新#2:
只是一个想法,也许修复将检查Facebook或Twitter .js是否已加载,如果没有,再次加载它们?