我正在GitHub页面上构建一个Jekyll站点。我有一个特定的页面,需要一点JavaScript。此页面的标题和正文标记由我正在使用的主题控制。我希望在外部脚本文件中维护这个JavaScript,而不是在页面中间使用原始脚本。
考虑到现代web技术,简单地使用异步脚本标记加载文件有什么大问题吗?一旦生成页面,这个标记就会出现在body内容中,但据我所知,在正文中不加载外部脚本的建议最初是出于加载速度的考虑,在异步中有些不再有效。脚本很小,并控制非关键功能。
基本上:
<body>
...page content...
<script src="/assets/js/myscript.js" type="text/javascript" async=""></script>
...page content...
</body>
我可以重写主题布局来直接访问标题,并且更传统地这样做,但是如果可能的话,我想避免这样做。对于Jekyll是否还有使用小型一次性脚本的建议?
发布于 2018-06-15 14:09:35
最后,Jekyll标记被转换成标准的HTML,因此这个问题被简化为“在HTML主体中加载小的、非关键的async
外部脚本是否安全、性能良好?”
有关显示https://stackoverflow.com/a/39711009如何工作的图表,请参阅async
。为了清楚起见,我将把它复制到下面。它向我们展示了在HTML解析的同时请求资源,使得性能达到与运行内联JS大致相当的效果。因此,如果脚本很小(假设它不是资源密集型的,而不是代码长度较小),那么无论您把它放在哪里,性能影响都是可以忽略不计的。
如果脚本是非关键的,最好还是把它放在正文的末尾(如果可能的话),以便首先加载关键的HTML和其他资源,因为在执行脚本时HTML解析仍然暂停。
Google Chrome灯塔工具可以用来显示网页的性能,并显示网页的哪些部分对性能的影响最大,而在我的经验中,这往往是图像。您可以通过打开Chrome工具来使用这些工具,然后转到审计选项卡。
https://stackoverflow.com/questions/50862864
复制相似问题