Javascript 对象';不可用';在Firefox控制台中
我有几个div带有Javascript 对象';不可用';在Firefox控制台中,javascript,html,firefox,getelementsbyclassname,Javascript,Html,Firefox,Getelementsbyclassname,我有几个div带有class='classu name',并且还声明了 var A = document.getElementsByClassName('class_name'); console.log(A[0]); Chrome控制台显示: <div class="class_name"> div 1 </div> <unavailable> div1 Firefox控制台显示: <div class="class_name"> div
class='classu name'
,并且还声明了
var A = document.getElementsByClassName('class_name');
console.log(A[0]);
Chrome控制台显示:
<div class="class_name"> div 1 </div>
<unavailable>
div1
Firefox控制台显示:
<div class="class_name"> div 1 </div>
<unavailable>
问题是什么,或者可能的原因是什么?目前有四种解决方案:
console.log(JSON.stringify(variable,null,4))
代替console.info(variable)
。这具有捕获由任何类型的内存管理错误引起的错误的额外优势,但在插入父/子元素时,它可能会在实际元素上造成循环冗余。我的原始解决方案control+shift+K
,或Tools->Web Developer->Web Console
),而不是标准的Firefox浏览器控制台(control+shift+J
,或Tools->Web Developer->Browser Console
)。感谢Panos Astithas提供此信息about:config
作为Firefox中的地址,并将browser.tabs.remote.autostart
或loop.remote.autostart
设置为false。感谢Janekptacijarabaci提供此信息更新:Firefox v仍然存在问题。59.0.2和v。59.0.3.两种可能的解决方法: 1)使用“网络控制台”。
“Web控制台”(CtrlShiftK而不是“浏览器控制台”CtrlShiftJ)显示预期输出 2)禁用“e10s”多处理器支持:
- about:config
- browser.tabs.remote.autostart = False
如果禁用E10,浏览器控制台将显示预期输出
重述(2018年1月2日):
该问题在FF 64.0中仍然存在:通常,对象将在浏览器控制台中显示为“不可用” 要复制(已启用E10):
console.log('test');
控制台日志(123);
log([1,2,3]);
log({x:'x'});
log(document.getElementById('myDiv');
window.onload=函数(){
log(document.getElementById('myDiv');
};
浏览器控制台中的输出(错误输出):
测试
123
无效的
Web控制台中的输出(按预期):
测试
123
数组(3)[1,2,3]
对象{x:“x”}
无效的
另见:
添加firefox版本。还有一个片段曾经在Firefox+Firebug上出现过类似的问题。原来Firebug已不再维护,必须切换到才能再次使用。@Sagar V7-Firefox版本为52.0.2(32位)-请解释一下“代码片段”是什么意思?在Fiddle或类似的东西中工作的例子?@JiFus-Thnx 4 suggestion-奇怪的是console.log中的许多其他日志只显示了fine@br00x我也是,只是说你可能想试试。当然,这也可能是另一个问题。OP一开始并没有使用Firefox 57,所以更改4个版本是一个很大的猜测。@TylerH:我注意到了,但无论如何,谢谢你。=)不管怎样,你试过我的解决方案了吗,还是你遇到了问题?
test
123
Array(3) [ 1, 2, 3 ]
Object { x: "x" }
null
<div id="myDiv">