我在很多网站上使用jQuery,原因很明显。所以我只是将它包含在header.php
文件中。我还包括其他JavaScript库,所以最终得到这样的东西:
<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
<script type="text/javascript" src="http://example.com/js/classes.js"></script>
<script type="text/javascript" src="http://example.com/js/common.js"></script>
有时甚至更多包含,其中一些我只使用1-2页。将这些JavaScript文件包含在每个其他页面中也是一种好习惯吗?它会降低性能吗?我的意思是,我知道他们必须第一次下载,但是它们会在它之后被缓存,不是吗? 那么如何仅包括(不使用它)会影响性能?缓存文件如何改变这种情况?
如果它影响性能,我应该做些什么:
<?php if (JSFileNeeded) { ?>
<script type="text/javascript" src="http://example.com/js/classes.js"></script>
<?php } ?>
我还可以使用哪些其他技术来摆脱未使用的文件?
答案 0 :(得分:1)
我建议您使用requireJS
来满足所有javascript依赖需求:http://requirejs.org/。它可能是比使用后端代码打开和关闭脚本标签更优雅的解决方案。
无论哪种方式,包含未使用的文件通常都是一个坏主意,即使它们被缓存它们仍会占用内存。如果它们没有被缓存,那么额外的连接和线路上的更多位将减慢您的页面。
在宽带连接上,未使用的文件不太可能产生太大影响。但是,如果通过间歇性数据连接在手机上查看该页面,则可能导致页面变慢甚至无法加载。