在Google Chrome调试器中加载jQuery的命令是什么?

40

我记得在Google Chrome的检查器控制台中有一个特定的命令,可以加载jQuery并允许您执行jQuery命令。

然而,我不记得它是哪个命令了,搜索在线上也只带来无关的结果。

有人知道是哪个命令吗?

谢谢!

编辑:多年后我意识到我在寻找控制台中的$$函数。然而,这不是jQuery,但提供了类似的选择器选项,最可能是document.querySelectorAll的简写。这里的答案涉及添加真正的jQuery,具有其所有功能。

2个回答

103

您的意思是,一个用于在任意页面加载jQuery的脚本?我已经制作了以下可跨浏览器使用的书签工具来实现这个目的:

javascript:if(!window.jQuery||confirm('Overwrite\x20current\x20version?\x20v'+jQuery.fn.jquery))(function(d,s){s=d.createElement('script');s.src='https://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.js';(d.head||d.documentElement).appendChild(s)})(document);

该代码能够检测 jQuery 是否存在,如果存在,则会出现一个确认对话框,其中显示当前版本,以便您决定是否覆盖现有的 jQuery 对象。

目前,使用 SSL 从 CDN 加载 jQuery 1.8。

为了节省您的时间,这里提供与该回答顶部相同的书签工具,但是从http://code.jquery.com/获取最新版本(而不是固定版本):

javascript:if(!window.jQuery||confirm('Overwrite\x20current\x20version?\x20v'+jQuery.fn.jquery))(function(d,s){s=d.createElement('script');s.src='http://code.jquery.com/jquery.js';(d.head||d.documentElement).appendChild(s)})(document);

注意:拥有最新版本很好,但不要感到惊讶,当jQuery“表现奇怪”(=已更新)时。


3
@Alpha,你的意思是“类似于jQuery”的选择器吗?当页面没有定义这些选择器时,$代表的是document.getElementById,而$$则代表document.querySelectorAll - Rob W
1
也许我有点糊涂了……我记得曾经看过一段 Google 工程师的视频,他展示了一个页面可能没有加载 jQuery,但如果他想要用所有能力来进行故障排除,他会输入一个命令,然后 jQuery 就会被直接加载到页面中(然后,他继续展示了使用复杂选择器和 jQuery 函数的示例)。但是,我不记得那是哪个视频,或者那个命令长什么样。 - Alpha
除非网站有一个禁止ajax.googleapis.comContent-Security-Policy,否则它运行得很好。 - Jeremy Durnell
1
如果网站使用HTTPS,则将jquery.js的URL更新为使用HTTPS。否则,Chrome将阻止脚本的加载。 - buzz
@buzz 我曾经看到过 //code 的使用,与 http:// 或甚至是 https:// 相对应。 - barlop
显示剩余2条评论

18

您还可以创建一个Chrome片段,在Chrome检查器中加载jQuery(如何创建自定义片段

片段代码:

(function() {
  if (! window.jQuery ) {
    var s = document.createElement('script');
    s.type = 'text/javascript';
    s.async = true;
    s.src = '//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js'; // you can change this url by latest jQuery version
    (document.getElementsByTagName('head')[0] ||
      document.getElementsByTagName('body')[0]).appendChild(s);
  }
}());

谢谢。我投票支持这个答案,因为它也适用于HTTPS。 - Laurent
可以为它创建一个书签。javascript:!function(){......}();,并且该if语句及其所有内容都可以放在{}中。当然也适用于地址栏。 - barlop

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接