浏览器通常允许从任何单个域进行6个并发下载。 但是,如果您使用诸如jquery之类的脚本中的CDN并使用一个后备脚本,以防CDN不可用(例如以下脚本),则无法在script标签上使用async属性,因此最终导致对CDN并松开浏览器中的并行性功能。您不能只添加async属性,否则回退脚本可能会在CDN完成下载之前执行-这是一场竞赛。
那么,如何在不丢失浏览器内置并行性的情况下将CDN与后备脚本一起使用?
<script data-require="jquery@*" data-semver="3.1.1" src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
window.jQuery || document.write(
'<script src = "js/jquery-3.1.1.min.js">
<\/script>')
</script>