未引入jQuery文件,Chrome控制台中$()为何可作为选择器生效?
为什么没引入jQuery,Chrome控制台里的
$()还能生效? 嘿,这个问题其实挺常见的——Chrome DevTools自带了一套自己的快捷选择器工具,和你熟悉的jQuery $完全是两回事哦!
核心原因:控制台内置了简化选择器函数
Chrome控制台为了方便开发者调试,默认提供了几个快捷函数:
$(selector):本质是document.querySelector()的别名,用来快速选中匹配选择器的第一个DOM元素,语法和jQuery选择器类似,但只有基础的元素选择功能。$$(selector):对应document.querySelectorAll(),返回匹配选择器的所有DOM元素组成的数组,效果类似jQuery里$(selector)返回的集合,但没有jQuery的链式操作、事件绑定等额外能力。
为什么jQuery相关函数用不了?
这个内置的$只是DevTools提供的轻量调试工具,它没有jQuery库的任何额外方法(比如$.ajax()、$(el).hide()、$(el).on()这些)。只有当你在页面中正式引入jQuery库后,控制台的$才会被jQuery的版本覆盖,这时才能使用完整的jQuery功能。
额外小知识
如果页面已经引入了jQuery,你又想临时用DevTools自带的$,可以:
- 直接调用
document.querySelector()/document.querySelectorAll() - 使用控制台的
$0(当前选中的DOM元素)、$1(上一个选中的元素)这类快捷变量 - 执行
jQuery.noConflict(),把$的控制权还给DevTools的内置函数
内容的提问来源于stack exchange,提问作者ashish7249
相关产品推荐
相关产品推荐

