jQuery在初始页面加载时重新加载javascript资源

jQuery在初始页面加载时重新加载javascript资源,javascript,jquery,ajax,performance,angularjs,Javascript,Jquery,Ajax,Performance,Angularjs,我目前有一个AngularJS(1.2.18)web应用程序,它使用jQuery(1.9.0)和其他javascript文件 我注意到,在浏览器缓存之前,网站第一次加载速度非常慢。我依次发现: 我的所有外部javascript文件并行加载(包括jQuery) 我的剧本 $.ajaxSetup({cache:true}); 加载以防止jQuery再次重新加载资源 一个很长的延迟,在此期间jQuery连续地重新加载步骤1中的所有内容,如下所示 为什么jQuery再次尝试重新加载我的所有资源 不$

我目前有一个AngularJS(1.2.18)web应用程序,它使用jQuery(1.9.0)和其他javascript文件

我注意到,在浏览器缓存之前,网站第一次加载速度非常慢。我依次发现:

  • 我的所有外部javascript文件并行加载(包括jQuery)
  • 我的剧本
    
    $.ajaxSetup({cache:true});
    
    加载以防止jQuery再次重新加载资源
  • 一个很长的延迟,在此期间jQuery连续地重新加载步骤1中的所有内容,如下所示
  • 为什么jQuery再次尝试重新加载我的所有资源

    $.ajaxSetup({cache:true})缓存所有javascript jQuery需求

    我所看到的
    cache:false
    cache:true
    之间的唯一区别是,是否在重新加载的资源的末尾附加了时间戳。在这两种情况下,我所有的javascript都会重新加载


    谢谢你的帮助

    我在index.html中的脚本既不在
    中,也不在
    中。将脚本放入
    后,一切正常。

    1。在生产应用程序中,所有这些JS文件都应该连接起来并缩小(有关这些任务,请参见Gulp或Grunt)。2.你到底是如何加载这些JS文件的?这些脚本标记在HTML中吗?或者是否存在某种依赖项加载
    $.ajaxSetup
    仅适用于
    $.ajax(…)
    调用,而不适用于脚本标记。3.我的DevTools设置为禁用缓存,如果您的也设置为禁用缓存,则在DevTools打开时将看不到任何缓存。1。是的,这是开发环境。2.这些是HTML中的脚本标记。3.Yea mine也设置为禁用缓存。让我试着启用缓存。@christian314159看起来即使启用了缓存,jQuery似乎仍在重新加载脚本……但如果它们是脚本标记,则每次都是这样加载的。您的
    $.ajaxSetup
    对它没有任何作用。谢谢您的链接。我现在明白你的意思了。在加载之后的一段时间内,网络瀑布中突然出现了两次所有内容。是否有正在触发的window.load事件?另外,您是否注意到所有脚本标记都在body标记之外(它们实际上都是HTML标记的子项)?也许这就是原因。