console-log-html v2.0.2
A tiny library that overrides the browser's console.* functions allowing the logged messages to be displayed in HTML.
Migrating from 1.x to 2.0? See MIGRATING.md
Installation:
Simply include the file on your page:
<script type="application/javascript" src="console-log-html.min.js"></script>
<!-- Or, alternatively, use the CDN URL -->
<script type="application/javascript" src="//cdn.rawgit.com/Alorel/console-log-html/master/console-log-html.min.js"></script>It can also be included as a dependency from npm:
npm install console-log-html --save(function(){ // Your closure
var ConsoleLogHTML = require('console-log-html');
})();Usage:
<ul id="myULContainer"></ul> <!-- I will hold the log messages -->
<script type="application/javascript" src="console-log-html.min.js"></script>
<script>
ConsoleLogHTML.connect(document.getElementById("myULContainer")); // Redirect log messages
ConsoleLogHTML.disconnect(); // Stop redirecting
</script>You can also instruct the script to only log to the console by passing a second argument to console.*(), e.g.:
console.log("foo"); // Logs "foo" to HTML
console.log("Look, some JSON:", {foo: 'bar'}); // Logs "Look, some JSON: Object {"foo":"bar"}" to HTML
console.skipHtml.log("bar"); // Logs only to the consoleCustomisation
Default styles
The default css classes can be overriden in ConsoleLogHTML.DEFAULTS:
ConsoleLogHTML.DEFAULTS.error = "some-error-css-class"; // Will be applied to console.error()
ConsoleLogHTML.DEFAULTS.log = "another-override"; // Will be applied to console.log()During connect()
The connect method has the following signature:
function connect(target, options, includeTimestamp, logToConsole){}targethas already been covered - it's the <ul> elementoptionsallows you to override the css classes inConsoleLogHTML.DEFAULTSfor the duration of theconnect, i.e. it would not save the values. For example, if you wanted to override thelogandwarnCSS classes you could pass the object{ "warn": "my-warn-css-class", "log": "my-log-css-class" }includeTimestamp- when set totrue(the default value), a timestamp will be prepended to each message as it appears in the <ul>. The timestamp's format depends on the user as it is created via(new Date()).toLocaleTimeString()logToConsole- when set totrue(the default value), appear both in the console and the <ul>; when set tofalse, they appear only in the <ul>.appendAtBottom- when set totrue(default=false), log messages will be appended at the end of the <ul>-list.
More information:
