为什么在页面中两次包含 cdn 会破坏关联的 cdn 的功能

Why including cdn s twice in a page breaks the functionality of the associated cdn

我曾多次遇到这样的问题,即在页面中两次包含特定文件或 CDN 会破坏 CDN 的功能。解决方案是每页只添加一次。现在我想知道它的原因。

例如,假设我在 index.php 页面中附加了 bootstrap CDN,并且还在 header.php 中包含了 bootstrap CDN。现在,我已将 header.php 包含在 index.php 页面中。结果我可以看到 index.php 的某些部分失去了它的功能。谁能告诉我背后的核心原因?它是否以某种方式破坏了包含线程?

我试图通过在一个页面中包含两次相同的功能来理解它。但是页面和功能似乎都可以正常工作。

对这件事有点疑惑和好奇

我发现是 js 和 jquery 导致了问题。如果我两次包含 jquery 和 js CDN,它会创建 callConflict。这就是 JavaScript 功能无法正常工作的原因。

我们至少可以通过三种方式解决这个问题:

  1. 只包含一次 CDN(最明显的解决方案)。

  2. 检查我们是否已经加载了jquery。使用下面的代码行--

    window.jQuery || document.write('<script src="js/jquery-1.7.2.min.js"><\/script>')
    
  3. 由于所有库都使用 $ 关键字标记来实例化每个调用,因此我们需要创建一个新的 mark-up。然后对于所有 jquery 调用,我们需要使用我们的新标记。使用

    var $jq = jQuery.noConflict();
    

    它将创建一个新的 mark-up $jq