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

时间:2012-06-28 10:23:45

标签: javascript jquery console

我不能为我的生活工作这一个。我有js正在运行,'container state ..'是来自页面上运行的js的控制台日志。它正在显示一个选择器,但如果我想在控制台中做任何事情,它只返回null。我假设某种程度上我在某处编写jQuery函数,好像我调用了jQuery

>>> $
function()

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

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

4 个答案:

答案 0 :(得分:7)

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

答案 1 :(得分:4)

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

$ = jQuery.noConflict();

答案 2 :(得分:2)

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

$ = jQuery;

就这么简单。

要获得更完整的解决方案(真正的开发,而不仅仅是控制台),请使用@Joseph the Dreamer的解决方案。

答案 3 :(得分:1)

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

因此,加载jQuery(例如through a bookmarklet),您可以使用jQuery选择器。

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