Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery选择器不在chrome控制台中_Javascript_Google Chrome_Jquery Selectors_Google Chrome Devtools - Fatal编程技术网

Javascript jQuery选择器不在chrome控制台中

Javascript jQuery选择器不在chrome控制台中,javascript,google-chrome,jquery-selectors,google-chrome-devtools,Javascript,Google Chrome,Jquery Selectors,Google Chrome Devtools,直到Chrome22.0,当我输入javascript代码时 它用于返回到我的Google Chrome控制台: 这是活的DOM对象。我可以通过悬停在页面上轻松找到该对象。 昨天我将我的Chrome浏览器更新到23.0版,现在相同的js代码返回如下内容 [,选择器:“.page”,上下文:#文档] 这是原始js对象。我可以展开它并读取它的属性,但在页面上看不到任何活动的DOM对象 我试图用console.log替换console.debug,或者将$('.page').get()添加

直到Chrome22.0,当我输入javascript代码时

它用于返回到我的Google Chrome控制台:


这是活的DOM对象。我可以通过悬停在页面上轻松找到该对象。 昨天我将我的Chrome浏览器更新到23.0版,现在相同的js代码返回如下内容

[,选择器:“.page”,上下文:#文档]
这是原始js对象。我可以展开它并读取它的属性,但在页面上看不到任何活动的DOM对象

我试图用
console.log
替换
console.debug
,或者将
$('.page').get()添加到jQuery选择器,但没有成功


当我编写
console.debug($('.page'))时,还有什么有趣的事情直接进入Chrome控制台,与Chrome 22.0类似。只有在从js代码调试时才会出现问题。

理论上,这可以从DOM数组中去除jQuery属性:

console.log(Array.prototype.slice.call($('.page')));
但是,在控制台DOM节点数组时,dev工具栏将不再允许您从数组中浏览DOM节点(本机属性除外)。我知道解决这个问题的唯一方法是单独记录每个节点:

Array.prototype.slice.call($('.page')).forEach(function(elem) {
    console.log(elem);
});
或者简单地说:

$('.page').each(function(i, elem) {
    console.log(elem);
});

有时为了调试,我还测试了“.html()”或innerHtml来调试一些动态html代码,但“David”方式也是我所做的。

这似乎在23.0.1271.91版中得到了修复。

请尝试
console.log($('.page')[0])
它适合我@23.0.1271.64,谢谢。它可以工作,但当然只返回第一个匹配的元素。早些时候,我可以得到一个活体数组。如果你在chromes开发者控制台中输入选择器,它应该像在早期版本中一样显示所有元素。我还没有找到另一种输出元素数组的方法。+1,这是快速调试jQuery的杀手。我升级了@supernova,但请注意,这只是一种解决方法,不是修复方法。我使用的是23.0.1271.91,但仍然可以看到这种行为。@naller-wird。F12->
$(“#内容”)
在这个页面上对我来说很好。关于说
version23.0.1271.91m
我运行的是version23.0.1271.95,当我在这个页面上键入$('#content')时,我得到的是[>…],而不是预期的…..使用这个想法,可以做一些类似
console.logDOM=function(x){$(x).each(function(I,elem){console.log(elem);}
添加一个日志记录方法,该方法按照OP希望的方式工作。
console.log(Array.prototype.slice.call($('.page')));
Array.prototype.slice.call($('.page')).forEach(function(elem) {
    console.log(elem);
});
$('.page').each(function(i, elem) {
    console.log(elem);
});