我有这段代码:
if (typeof console != "undefined")
if (typeof console.log != 'undefined')
console.olog = console.log;
else
console.olog = function() {};
console.log = function(message) {
console.olog(message);
$('#debugDiv').append('<p>' + message + '</p>');
};
console.error = console.debug = console.info = console.log
哪个适用于简单的控制台日志,但我想要一切!浏览器中的控制台显示的所有内容,我想要的是div:
例如:
i170.png:1 GET http://localhost:3000/modules/core/img/items/i170.png 404 (Not Found)
i183.png:1 GET http://localhost:3000/modules/core/img/items/i183.png 404 (Not Found)
没有显示在我创建的div中,我如何才能将所有内容显示在那里?
答案 0 :(得分:4)
这里有两个问题。
1)转储传递给console.log的所有参数
您可以在arguments
中获得该函数的所有参数。所以这是一个可能的解决方案。
更改
console.log = function() {
console.olog.apply(console, arguments);
$('#debugDiv').append('<p>' + [].map.call(arguments, JSON.stringify) + '</p>');
};
到
window.onerror = console.log;
2)获取所有错误
最简单的解决方案是添加
onerror
但请注意,某些错误不会触发magicValue()
,也无法在JS中捕获。