JSFiddle - React, Tailwind, and code Playground
by idleberg
HTML
<canvas id="my-canvas"></canvas>
<button id="btn-panel-toggle">Hide Panel</button>
<div id="panel">
<div class="controls">
<div class="song-controls">
<label>
<input placeholder="Soundcloud Track URL" id="sc-url" type="text" value="http://soundcloud.com/lone-1/lone-airglow-fires"/>
</label>
<button id="btn-play">Play</button>
</div>
<div class="code-controls">
<button id="btn-runpreset">Run Preset</button>
<select id="dim-factor" title="Canvas Size Factor">
<option value="1">1x</option>
<option value="2">2x</option>
<option value="4">4x</option>
<option value="8">8x</option>
</select>
</div>
</div>
<div id="preset-code">
</div>
</div>
CSS
body {
overflow: hidden;
background-color: grey;
}
button, select {
background-color: rgba(255, 255, 255, 0.3);
border-radius: 5px;
border: 1px solid transparent;
padding: 5px;
-webkit-appearance: none;
box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
}
button:hover, input:hover, select:hover {
border: 1px solid rgba(255, 255, 255, 0.6);
}
button:hover, select:hover {
cursor: pointer;
}
button:active {
background-color: rgba(255, 255, 255, 0.9);
}
input {
background-color: rgba(0, 0, 0, 0.6);
border-radius: 5px;
border: 1px solid transparent;
padding: 5px;
color: rgba(255, 255, 255, 0.6);
box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.9);
}
input:hover {
cursor: text;
}
#my-canvas {
position: absolute;
top: 0px;
left:0px;
}
#panel {
position: absolute;
top: 100px;
left:100px;
width: 650px;
background-color: transparent;
border-radius: 5px;
padding: 15px;
cursor: move;
background-color: rgba(192, 192, 192, 0.6);
box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
}
#panel .controls {
padding: 5px 0px;
}
#panel .song-controls {
float:right;
}
#btn-panel-toggle {
position: absolute;
top: 10px;
right: 10px;
}
#preset-code .CodeMirror {
/* Set height, width, borders, and global font properties here */
font-family: monospace;
height: 300px;
background-color: transparent;
}
JavaScript
$(function() {
var i = null;
$("body").mousemove(function() {
clearTimeout(i);
$("#panel,#btn-panel-toggle,#fps").fadeIn(200);
var i = setTimeout('$("#panel,#btn-panel-toggle,#fps").fadeOut(800);', 3000);
})
});