AO Console Before AngularJS
by jcpmcdonald
HTML
<div id="console" class="panel">
<div id="consoleWrap">
<div id="history">
<!-- Template: (reference only)
<div class="consoleLine">
<span class="consoleID">Username</span>
<span class="consoleText">Message</span>
<span class="consoleTime">Timestamp</span>
</div>
-->
</div>
<div id="consoleInputWrap">
<input type="text" id="consoleInput" />
</div>
</div>
</div>
CSS
body
{
background-color: rgba(0, 0, 0, 0);
color: #FFFFFF;
-moz-user-select: none;
-webkit-user-select: none;
}
.panel
{
position: absolute;
background-color: rgba(100, 100, 100, 0.7);
border-color: #bbbbbb;
border-width: 1px;
}
#console
{
bottom: 0px;
right: 10px;
font-size: small;
text-shadow:0 1px 0 rgba(255,255,255,0.3);
padding: 10px;
border-radius: 15px 15px 0px 0px;
border-style: solid solid none solid;
-moz-user-select: text;
-webkit-user-select: text;
}
#consoleWrap
{
position: relative;
width: 350px;
display: table-cell;
vertical-align: bottom;
}
#history
{
overflow: auto;
height: 150px;
max-height: 150px;
background-color: rgba(70, 70, 70, 0.5);
}
.consoleID
{
width: 50%;
color: rgba(230, 230, 230, 0.6);
font-weight: lighter;
}
.consoleID:after
{
content: ": ";
}
.consoleLine:hover
{
background-color: rgba(70, 70, 70, 0.6);
}
.consoleTime
{
color: rgba(220, 220, 220, 0.6);
float: right;
margin-right: 5px;
-moz-user-select: none;
-webkit-user-select: none;
}
#consoleInputWrap
{
height: 20px;
padding-top: 5px;
}
#consoleInput
{
width: 100%;
padding: 0px;
}
JavaScript
// BEFORE
function addConsoleMessage(name, message)
{
$("#history").append('<div class="consoleLine"><span class="consoleID">' +
name +
'</span><span class="consoleText">' +
message +
'</span><span class="consoleTime">' +
(new Date()).toLocaleTimeString() +
'</span></div>');
$("#history").scrollTop($("#history").prop("scrollHeight"));
// Execute javascript on request
if(message.toLowerCase().indexOf("/js ") == 0)
{
eval(message.substr(4));
}
}
$(document).ready(function()
{
var username = "me";
$("#consoleInput").keyup(function(event){
if(event.which == 13)
{
var text = $("#consoleInput").val().trim();
$("#consoleInput").val("");
if(text == "")
{
return;
}
addConsoleMessage(username, text);
}
});
});