JavaScript:按需加载jQuery

JavaScript:按需加载jQuery,javascript,jquery,Javascript,Jquery,动态地将jQuery库包含到页面中的最轻量级方法是什么? 我在一个页面上工作,有时它会运行一些自定义脚本(10行),有时还需要整个jquery。一旦用户已经下载了jquery,它就会缓存在他们的系统中,所以在第一次初始下载之后包含它真的很简单。您也可以将它包含在需要它的面板上,而不必担心稍后在页面中尝试将其添加到JS运行时 包括谷歌CDN中的内容: <script type="text/javascript" src="http://ajax.googleapis.com/ajax/lib

动态地将jQuery库包含到页面中的最轻量级方法是什么?
我在一个页面上工作,有时它会运行一些自定义脚本(10行),有时还需要整个jquery。

一旦用户已经下载了jquery,它就会缓存在他们的系统中,所以在第一次初始下载之后包含它真的很简单。您也可以将它包含在需要它的面板上,而不必担心稍后在页面中尝试将其添加到JS运行时

包括谷歌CDN中的内容:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>


您的客户端很可能已经在浏览器中缓存了jQuery。

只要在需要时为jQuery添加一个脚本标记:

var script = document.createElement('script'); 
script.type = 'text/javascript'; 
script.src = 'http://www.example.com/jquery.js';
document.body.appendChild(script); 
也许你会觉得有用。您可以随时调用load jQuery,方法是调用:

google.load("jquery", "1");

是的,我会一直把它包括进去——它很小,如果你使用谷歌cdn,它可能已经被缓存了

如果必须按需加载,可以编写代码将脚本标记附加到正文中。这段代码相当常见

void((function(){
  var e=document.createElement('script');
  e.setAttribute('type','text/javascript');
  e.setAttribute('src','jquery.js');
  document.body.appendChild(e)
})());

继续吧,把它包括进去

如果您有其他使用jQuery的页面,那么如果它们在您的站点上做了很多事情(或者以任何频率访问),那么它可能已经被缓存了。不过,请使用缩小的表单。使用的逻辑适用,但缓存的可能性较小

W.r.t您的评论:您多久验证一次自己网站上的页面?如果你的网站真的被破解了,你多久会知道?如果谷歌托管的代码被修改,发现的速度会高出许多数量级,对你的网站的影响也会相对较小,依我看。


    <script src="http://www.google.com/jsapi"></script> 
<script> 
//your awesome google
 google.load("jquery", "1");
  </script>
//你的谷歌真棒 load(“jquery”,“1”);
我不知道为什么这些家伙说谷歌是一个安全问题,他们不希望谷歌提供服务。yall是错的(或者告诉我原因),我说你下载一个坏的或者修改过的jquery版本(你应该去这个网站)比谷歌给你的问题更容易。谷歌太棒了,他们让它变得简单,如果对你来说,主机和prolly的吞吐量都比你弱的Web服务器高,那么你为什么不使用它呢


对不起,dup代码我还在这个网站上起步,但我找不到回复按钮

你不必担心jquery的加载时间,它托管在谷歌上,而且所有网站都使用相同的链接,所以它已经缓存在每个人的机器上。我不信任谷歌。我认为这是一个巨大的安全问题。。。我正在等待webdev世界的其他人醒来,闻到咖啡的味道。我想自己把这些文件送去。我相信我。我想知道你是否可以编写代码来检查从google提取的jQuery库的内容,并计算校验和之类的东西。当然,jQuery的流氓版本可能会严重破坏Javascript环境,使您无论如何都无法信任您的校验和代码。我承认我比大多数公司更信任谷歌。但是想想所有提供“共享此”小部件的公司,人们会在页面上包含他们的脚本。我根本不相信这些随机的公司。我知道有人入侵了其中一个网站,他们可以在你的页面上注入任何脚本。。。。对于网络钓鱼或重拨您的漏洞等……需要在web社区中进行更广泛的讨论,讨论一个新的标准来沙箱一些第三方脚本。我想我听过其他人从评估JSON的角度谈论这一点。(类似问题)新浏览器内置了json解码,这不仅仅是评估。好多了。但就像网络上的一切一样,总是会有抵制者(我看着你,IE)。请参阅Darin对cdn的评论。这更像是+1注意,上面的代码适合插入~anywhere~-它实际上来自bookmarklet。根据你的需要调整。我不想信任其他网站服务器,仅此而已。我不允许第三方将脚本注入我的页面。即使我认为我知道他们在注射什么。因为他们可以(1)移动它(2)更改它(3)他们可能被黑客攻击,然后对我的页面做任何他们想做的事情。我意识到谷歌的这种可能性要小一些。但为什么不走安全路线呢。