jQuery的$ .get函数是否会创建不必要的HTTP请求?

时间:2012-01-07 23:48:24

标签: jquery ajax http get

为了增加我网站的加载时间,作为一个很好的补充,我决定使用jQuery函数实现AJAX页面加载 $。get。

我很高兴地看到,就像我预期的那样,两个网站上相同的内容保持不变,而只加载了不同的部分。

但是,现在我想知道:当$ .get获取一个包含脚本和样式表的新页面时,但是当它们与前一页面相同时,浏览器是否仍会为这些元素发送新的HTTP请求?如果确实如此,那将破坏该功能的目的。

谢谢!

2 个答案:

答案 0 :(得分:0)

对于通过向现有页面添加元素而引用的资源,缓存的工作方式与通过加载包含其中元素的新页面引用的资源相同。所以它不会有任何区别。

也就是说,如果您通过Ajax加载整个页面(因为您提到脚本和样式表表明您是这样),那么您不会随时保存自己,因为您不是不会减少传输的数据量。如果您正在加载页面的(相对)小部分,那只会产生影响。

答案 1 :(得分:0)

插入HTML将删除脚本和链接标记。即如果您的AJAX响应是

<div>test</div>
<script src="...."></script>

只会插入div

如果您想确定,请打开Fiddler或Firebug,看看会发生什么。