jQuery 选择器在控制台中不起作用

jQuery selectors don't work in console

本文关键字:不起作用 控制台 选择器 jQuery      更新时间:2023-09-26

我一辈子都无法解决这个问题。我正在运行 js,"容器状态.."是页面上正在运行的 js 的控制台日志。它显示一个选择器,但如果我想在控制台中做任何事情,它只会返回 null。我假设我不知何故在某处过度编写 jQuery 函数,就好像我调用了 jQuery

>>> $
function()

这就是我调用选择器的方式

Container state 3 jQuery(div.module-carousel)
>>> $('body')
null  

jQuery使用2个命名空间,jQuery$。另一个库可能使用了$。尝试使用 jQuery 而不是 $(假设它也没有被覆盖):

jQuery('body');

或者将 jQuery 包装在一个即时函数中并在其中使用 $,这样你就不需要替换现有代码中的$

(function($){
    //"$" in here is jQuery
    //code that uses $ as jQuery will work in here
}(jQuery)); //pass in jQuery and execute
您可以在

控制台上编写任何命令之前使用它。

$ = jQuery.noConflict();

如果您的$过载(但不是jQuery),并且您想要在控制台中工作,只需执行以下操作:

$ = jQuery;

就这么简单。

对于更完整的解决方案(真正的开发,而不仅仅是控制台),请使用@Joseph梦想家的解决方案。

Firefox和Chrome都将$定义为控制台中document.getElementById的简写。当页面定义$时,此速记将自动覆盖。

因此,加载jQuery(例如通过书签),您可以使用jQuery选择器。

如果你不需要特定于 jQuery 的选择器,你也可以使用 $$ ,它是 document.querySelectorAll 的简写,它支持 CSS(3) 选择器。