Javascript 为什么Chrome';返回DOM元素而不是jQuery对象的JS控制台?
例如,当我在Chrome的JavaScript控制台中运行以下代码时Javascript 为什么Chrome';返回DOM元素而不是jQuery对象的JS控制台?,javascript,jquery,html,google-chrome,Javascript,Jquery,Html,Google Chrome,例如,当我在Chrome的JavaScript控制台中运行以下代码时 $("p") 我得到以下输出: <p>...</p> 从上面可以看出,当直接使用Chrome的JS控制台时,选择器“总是”返回一个DOM元素,而不是一个jQuery对象。当我在Edge浏览器的JS控制台中测试同一段选择器代码时,我得到了正确的jQuery对象。Chrome有什么问题 编辑:默认情况下,Chrome控制台中的$是一个特殊的选择器功能。如果您仅在控制台中未加载jQuery或任何其他覆盖$
$("p")
我得到以下输出:
<p>...</p>
从上面可以看出,当直接使用Chrome的JS控制台时,选择器“总是”返回一个DOM元素,而不是一个jQuery对象。当我在Edge浏览器的JS控制台中测试同一段选择器代码时,我得到了正确的jQuery对象。Chrome有什么问题
编辑:默认情况下,Chrome控制台中的
$
是一个特殊的选择器功能。如果您仅在控制台中未加载jQuery或任何其他覆盖$
的页面上运行$
,您将看到以下内容:
function $(selector, [startNode]) { [Command Line API] }
但是,如果页面覆盖了
$
值,则控制台将使用页面中的值。因此,如果页面加载了jQuery,那么您将得到一个jQuery对象。与jQuery(“p”)
?No@Roamer-1888相同。我知道“jQuery”没有定义。然后似乎$
不是jQuery
@VishalSubramanyamRajesh这意味着它不是jQuery的$()函数,而是Chrome控制台中的本机$()选择器,$()
是querySelector()的别名。请看副本。
[object Object]{0: HTMLParagraphElement {...}, 1: HTMLParagraphElement {...}, ...