在 facebook 开发者文档中,我看到:
<html>
<head>
<title>My Great Web page</title>
</head>
<body>
<div id="fb-root"></div>
<script>
// Load the SDK Asynchronously
(function(d){
var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
ref.parentNode.insertBefore(js, ref);
}(document));
</script>
<div class="fb-like"></div>
</body>
</html>
像谷歌分析一样,这会生成一个脚本标签,并将其插入到 dom 中。
为什么不一<script type="text/javascript" src="someUrl.com/etc"></script>
开始就写呢?
我假设它通过在页面加载(又名异步)后加载/注入来防止阻塞行为。异步是唯一的原因吗?