<div id='edits'>
<div id='edits'>
<div name="" id="html" cols="30" rodws="10"><!doctype html>
<head>
<title>Document</title>
</head>
<body>
<p>New pad created at $[[Date]]<p>
</body></div>
<div name="" id="css" cols="30" rows="10"></div>
<div name="" id="js" cols="30" rows="10"></div>
</div>
<div id="outcon"><iframe src="" frameborder="0" id="output" width='100%' height='100%'></iframe></div>
<link rel="stylesheet" href="http://codemirror.net/lib/codemirror.css">
<link rel="stylesheet" href="http://codemirror.net/theme/monokai.css">
<script src="http://codemirror.net/lib/codemirror.js"></script>
<script src="http://codemirror.net/mode/xml/xml.js"></script>
<script src="http://codemirror.net/mode/htmlmixed/htmlmixed.js"></script>
<script src="http://codemirror.net/mode/js/js.js"></script>
<script src="http://codemirror.net/mode/css/css.js"></script>
#edits {
#edits {
display: flex;
flex-direction: column;
position:absolute;
top:0;
left: 5px;
padding:0px 10px;
box-sizing:border-box;
max-height:100vh;
bottom: 10px;
justify-content: center;
}
#outcon {
position:fixed;
top:10px;
right:10px;
left:35vw;
background: #fff;
display:block;
box-sizing:border-box;
bottom:10px;
}
#edits > div {
flex: 1;
}
.CodeMirror {
border-radius: 5px;
}
.CodeMirror-gutter {
}
html, body {
height: 100%;
background:brown;
}
var csse = document.querySelector("#css"),
var csse = document.querySelector("#css"),
js = document.querySelector("#js"),
output = document.querySelector("#output"),
appCss = document.createElement("style"),
cDate = new Date(),
timer;
var setval = document.querySelector("#html").textContent;
document.querySelector("#html").innerHTML = "";
var cmhtmleditor = CodeMirror(document.querySelector("#html"), {
mode: 'htmlmixed',
lineNumbers:true,
theme:'monokai',
value: setval
});
var html = cmhtmleditor;
var cmcsseditor = CodeMirror(document.querySelector("#css"), {
mode: 'css',
lineNumbers:true,
theme:'monokai',
value: ""
});
var css = cmcsseditor;
var cmcsseditor = CodeMirror(document.querySelector("#js"), {
mode: 'js',
lineNumbers:true,
theme:'monokai',
value: ""
});
var js = cmjseditor;
function pushHtml() {
clearTimeout(timer);
timer = setTimeout(function() {
var date = new Date()
var thtml = html.getValue().replace(/\$\[\[DateCreated\]\]/g,cDate.getHours()+":"+cDate.getMinutes()).replace(/\$\[\[Date\]\]/g,date.getHours()+":"+date.getMinutes());
output.contentDocument.write(thtml);
output.contentDocument.close()
appCss.innerHTML = css.value;
output.contentDocument.head.appendChild(appCss);
var appJs = document.createElement("script");
appJs.innerHTML = js.value;
output.contentDocument.body.appendChild(appJs);
},1000)
}
function pushCss() {
appCss.innerHTML = css.getValue();
}
pushHtml()
cmhtmleditor.on('change',pushHtml)
js.addEventListener('input',pushHtml)
css.on('change',pushCss)