检查这个jsfiddle,看看控制台.$$没有定义.现在,打开一个全新的窗口,进入$$控制台.它定义了一个函数,用于获取与选择器匹配的所有dom元素的(类jquery)数组:
> $$
bound: function () {
return document.querySelectorAll.apply(document, arguments)
}
Run Code Online (Sandbox Code Playgroud)
这是由Dev工具添加的吗?在Firefox中使用Firebug时也会出现此问题.它是由工具本身在内部使用的吗?
例如,当我在Chrome的JavaScript控制台中运行以下代码时,
$("p")
Run Code Online (Sandbox Code Playgroud)
我得到以下输出:
<p>...</p>
Run Code Online (Sandbox Code Playgroud)
我们可以看到,我们得到一个DOM元素而不是一个jQuery对象.但是当我不使用Chrome的JS控制台而是直接在网页中使用代码以及一些console.log()时,我得到了一个jQuery对象.
[object Object]{0: HTMLParagraphElement {...}, 1: HTMLParagraphElement {...}, ...
Run Code Online (Sandbox Code Playgroud)
从上面我们可以确定,当直接使用Chrome的JS控制台时,选择器'always'返回一个DOM元素而不是jQuery对象.当我在Edge浏览器的JS控制台中测试相同的选择器代码时,我得到了正确的jQuery对象.Chrome有什么问题?
我认为必须首先加载jQuery源才能$用于目标元素.我在一个甚至不包含任何脚本的网页上,但不知怎的,我能够$('body')在Javascript控制台内运行,Chrome成功返回了它的价值.
为什么我没有得到像'undefined token'这样的语法错误?谢谢.
我没有在我的HTML页面上包含jQuery文件,但仍然$()在谷歌Chrome控制台中工作,它充当选择器,为什么?但是,jQuery的功能不起作用,但我想知道为什么$()要使用谷歌Chrome控制台?
当我们$在 chrome 控制台中输入时,它会返回一个函数。我确信这不是 jQuery 的$.
如果我想在控制台中使用 jQuery,在 chrome 控制台中触发 jQuery 的最佳方法是什么$?