Handle an existing console
This commit is contained in:
parent
67219b24fa
commit
0894879337
24
console.js
24
console.js
|
@ -1,5 +1,3 @@
|
|||
window.console = {};
|
||||
|
||||
window.onload = function () {
|
||||
var output = document.getElementById("output");
|
||||
var input = document.getElementById("input");
|
||||
|
@ -58,8 +56,12 @@ window.onload = function () {
|
|||
}
|
||||
}
|
||||
|
||||
function makeLogger (color) {
|
||||
var originalConsole = window.console;
|
||||
window.console = {};
|
||||
|
||||
function makeLogger (name, color) {
|
||||
return function () {
|
||||
if (originalConsole && originalConsole[name] && originalConsole[name].apply) originalConsole[name].apply(originalConsole, arguments);
|
||||
var entry = document.createElement('div');
|
||||
entry.style.margin = '0';
|
||||
entry.style.padding = '1px';
|
||||
|
@ -75,11 +77,11 @@ window.onload = function () {
|
|||
}
|
||||
}
|
||||
|
||||
console.log = makeLogger();
|
||||
console.debug = makeLogger('darkgray');
|
||||
console.info = makeLogger();
|
||||
console.warn = makeLogger('orange');
|
||||
console.error = makeLogger('red');
|
||||
console.log = makeLogger('log');
|
||||
console.debug = makeLogger('debug', 'darkgray');
|
||||
console.info = makeLogger('info');
|
||||
console.warn = makeLogger('warn', 'orange');
|
||||
console.error = makeLogger('error', 'red');
|
||||
|
||||
console.assert = function (assertion) {
|
||||
if (assertion) return;
|
||||
|
@ -105,7 +107,7 @@ window.onload = function () {
|
|||
console.log(stack.trim());
|
||||
}
|
||||
|
||||
var inputLogger = makeLogger('lightBlue');
|
||||
var inputLogger = makeLogger('log', 'lightblue');
|
||||
function run () {
|
||||
var selected = getSelectedText(input);
|
||||
var code = selected ? selected : input.value;
|
||||
|
@ -119,6 +121,10 @@ window.onload = function () {
|
|||
}
|
||||
|
||||
console.clear = function () {
|
||||
if (originalConsole && originalConsole.clear) {
|
||||
if (originalConsole.clear.apply) originalConsole.clear.apply(originalConsole, arguments);
|
||||
else originalConsole.clear();
|
||||
}
|
||||
output.innerHTML = "";
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue