我正在使用Yslow来回顾速度。
问题是我链接了太多的脚本,我正在努力减少重复:问题出在前两个脚本上:我试着只使用jquery 1.8,即使它的所有内容都来自jquery站点。在1.7.2中有一些东西是必需的,但我不能弄清楚。
我还将1.7替换为,jquery-1.3.min,它可以工作。Yslow在这方面给我的评分很低,因为HTTP请求的数量,实际上我总共有9个外部Javascript脚本和5个外部css脚本。(3用于样式切换)
如果我把第二个脚本放在第一位,自动补全就不起作用了。
<script type="text/javascript" src="js/jquery-1.7.2.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.8.19.custom.min.js"></script>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?key=AIzaSyAOpIKcVcsbojjjFIwnAOSsDwi_lARLp8o&sensor=false"></script>
<script type="text/javascript" src="http://gmaps-samples-v3.googlecode.com/svn/trunk/geolocate/geometa.js"></script>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script src="js/jquery.ui.autocomplete.js"></script>
<script type="text/javascript" src="scripts/downloadxml.js"></script>
简而言之,我正在努力减少外部j/s + css的数量。
发布于 2012-05-01 01:12:58
看起来你可以把这两个合并起来
<script src="js/jquery.ui.autocomplete.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.8.19.custom.min.js"></script>
因为自动完成包含在UI中。如果您不想要整个UI,只需在您的自定义构建中包含自动完成。
你也可以使用你的jQuery的公共资源,谷歌和公司有一个分布式的服务器网络,所以他们给你的用户的点数比你给你的用户的点数要少。
简而言之,尝试这个组合:
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js"></script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min.js"></script>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?key=AIzaSyAOpIKcVcsbojjjFIwnAOSsDwi_lARLp8o&sensor=false"></script>
<script type="text/javascript" src="http://gmaps-samples-v3.googlecode.com/svn/trunk/geolocate/geometa.js"></script>
<script type="text/javascript" src="scripts/downloadxml.js"></script>
发布于 2012-05-01 01:15:22
首先,为什么要用1.3替换1.7?这太傻了。
其次,我推荐Minify将您的JS合并到一个组合的精简文件中。
Minify提供了一个包含脚本数组的groupsConfig.php
文件,基本上如下所示:
'js' => array(
'//js/jquery-1.7.2.js',
'//js/jquery-ui.js',
'//js/libs/geolocate/geometa.js',
'//js/libs/downloadxml.js'
),
'css' => array(
// same thing with css files
)
那么您将只有一个<script src="/min/?g=js"></script>
标记和一个<link rel="stylesheet" src="/min/?g=css" />
标记。
发布于 2012-05-01 01:15:30
一种选择是将所有的源文件(js & css)放在手边,然后缩小并组合源文件。
通过这种方式,您可以拥有1个主要的css文件和1个主要的js文件,以及一个用于特定页面的可选的额外js文件(也可以合并/缩小)。
https://stackoverflow.com/questions/10387451
复制相似问题