部分内联外部JavaScript库

部分内联外部JavaScript库,javascript,jquery,Javascript,Jquery,我正在创建一段JavaScript,以部署到目前我还不知道的站点 这段代码应该可以做一些简单得多的事情,如果我可以用jQuery来做的话,但是我不能在这段代码中包含任何外部库,因为: 我无法加载其他文件,只能加载我编写的一个JavaScript文件 任何外部库都可能与未知客户端站点的代码冲突(它们可能已经将同一个库加载到其站点中) 我需要尽快下载文件 现在我的问题是:是否有一个工具可以帮助我从外部库(jQuery)中提取代码使用的特定代码路径,以便我可以将它们作为代码的一部分直接嵌入到代码中(使

我正在创建一段JavaScript,以部署到目前我还不知道的站点

这段代码应该可以做一些简单得多的事情,如果我可以用jQuery来做的话,但是我不能在这段代码中包含任何外部库,因为:

  • 我无法加载其他文件,只能加载我编写的一个JavaScript文件
  • 任何外部库都可能与未知客户端站点的代码冲突(它们可能已经将同一个库加载到其站点中)
  • 我需要尽快下载文件
  • 现在我的问题是:是否有一个工具可以帮助我从外部库(jQuery)中提取代码使用的特定代码路径,以便我可以将它们作为代码的一部分直接嵌入到代码中(使用名称空间等)


    或者可能是我的问题一开始就错了。

    我知道它与第一条警告冲突,但您可以通过将脚本元素写入CDN来动态地在代码中包含jquery,例如


    从CDN加载意味着许多用户的缓存中已经有了CDN。此外,缩小版非常小。

    很有趣,但这意味着我不得不等待jQuery加载,并且与我的警告中的第一项冲突……使用CDN的好处是,许多人已经从其他站点缓存了jQuery。因此,它将有望来自他们的浏览器缓存-看看StackOverflow源代码。或者jQuery是开源的,所以如果你喜欢,你可以去把它砍成碎片。对。我的问题是,是否有任何方法可以将这种黑客行为自动化,我想这就是googs闭包编译器:高级模式的作用。但是,执行分支基于运行时信息的代码使得静态分析非常困难。
    var headID = document.getElementsByTagName("head")[0];     
    var script = document.createElement('script');
    script.src = 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.js';
    script.onload = function() { initialiseJQuerySpecificCode(); };
    headID.appendChild(script);
    
    function initialiseJQuerySpecificCode() {
             jQuery.noConflict(); 
             //more jquery code
             jQuery(document.ready(function() { 
                //initialisetion code 
             }));
    };