为什么有时jQuery选择器返回类似于" a.f.n.i t"的东西

Why sometimes jQuery selector returns something like "a.fn.init"?

本文关键字:quot 返回 选择器 类似于 为什么 jQuery      更新时间:2023-09-26

我不知道我的Chrome浏览器发生了什么,但突然间在控制台做$('div#my')的行为与以前完全不同。有一次我经历过这种情况,但后来不知怎么恢复了,所以我不知道如何重现,今天又发生了。

请观看视频:http://peaceevertvimg.org/jq.php。

在视频中,我在两种不同的浏览器中使用$('div#my')

第一个浏览器不是chrome,但我相信它使用了chrome的内核,所以它的行为是我所期望的,因为目前我的chrome不像预期的那样工作,所以我必须用它来证明我的期望:当你做$('div#my '你直接看到html标签,你可以很容易地看到标签的html内容,这是"东西"在这种情况下。

相反,在我的chrome浏览器中,结果是不同的,当我做$('div#my')时,我看到一个对象(n.fn.init),我不能立即看到"某物",这当然是非常不方便的。但在此之前,我很确定它不是这样的,行为完全像第一个浏览器。

这个视频中的简单网页是http://peaceevertvimg.org/jquery.php,你可以在chrome浏览器中自己去测试。我很确定你们大多数人不会看到我视频中显示的结果。我的chrome怎么了?(我已经禁用了所有扩展并将其更新到最新版本)

如果你打开Chrome的开发者工具控制台为任何给定的页面,简单地调用$,你应该看到

$(selector, [startNode]) { [Command Line API] }

如果你在一个加载了jQuery的页面上做同样的事情,你会看到

function (a,b){return new n.fn.init(a,b)}

计算$($0)将取决于给定上述信息的页面上下文。您将获得一个元素引用或一个jQuery对象。