0

当我页面上的 JavaScript 从 CDN(或任何外部源)加载时,它会加载多次 (5+) 次。本地的 JS 文件只加载一次。

这是相关的HTML:

<html>
  [...]

  <body>
    [...]

    <script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
    <script src="//cdnjs.cloudflare.com/ajax/libs/jquery-migrate/1.2.1/jquery-migrate.min.js"></script>
    <script src="//cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.3.1/jquery.cookie.min.js"></script>
    <script src="//cdnjs.cloudflare.com/ajax/libs/modernizr/2.6.2/modernizr.min.js"></script>
    <script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
    <script src="js/index.min.js"></script>
    <script src="js/bootstrap-notify.min.js"></script>
  </body>
</html>

以下是来自 Chrome 资源选项卡的请求的屏幕截图:

铬资源

如您所见,bootstrap.min.js(外部)加载多次 - 但bootstrap-notify.min.js(本地)加载一次。

任何外部来源都会发生这种情况,而不仅仅是cdnjs.cloudflare.com.

编辑:修复它。这是与我的 JavaScript 中的 AJAX 请求相关的问题。

4

1 回答 1

1

$.fn.getPage是你的问题。您将整个HTML 文档插入到当前文档中,这也将插入<script>标签。

只更换主体:

$(data).find('body').children().appendTo(self.find('body').empty());
于 2013-08-05T20:38:18.500 回答