我一直在优化我的网站,但是我遇到的一个问题是我不使用的所有jQuery函数。我使用的唯一一个是平滑的页面滚动。这似乎是浪费下载时间。
我的问题是:是否有任何脚本或程序会删除我不需要的jQuery代码,并保留我需要的1或2个函数。
答案 0 :(得分:4)
没有办法做到这一点,特别是因为它并不那么简单。例如.fadeIn()
是一个方法,但是它调用jQuery的整个动画部分来淡化元素,但是在你的选择器访问包含Sizzle选择器引擎的遍历部分之后......这就是大多数框架的方式,它由于框架内部有如此多的依赖,因此非常很难删除碎片。
话虽这么说,如果你正确地提供jQuery,它会被缩小和压缩,并且你只是向他们缓存的客户端发送 24kb ,所以它是只发送一次,而不是每个页面加载。此外,他们可能已经从其他网站缓存了它,将他们的网站指向同一个CDN(您正在查看的页面)的人越多,发生这种情况的可能性就越大。
Google有一个CDN,details here,例如你可以从中获取jQuery或jQuery UI:
此外,Microsoft有一个CDN,details here,您可以使用fran jQuery和验证库:
注意:这些是当前版本截至本回答时,如果您稍后发现这些显式链接,可能会有更新版本可用。
答案 1 :(得分:2)
只需从Google引用该库,很可能它已经缓存在客户端上......
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js">
</script>
这也可以节省带宽。 StackOverflow和许多其他网站都这样做。