JSFiddle - React, Tailwind, and code Playground
by serio
HTML
<div class="report">Font size is <span class="size">128</span>px
<br />
<br />
</div>
<div class="controls"> <a href="#" class="up">+</a>
<a href="#" class="down">-</a>
</div>
<div class="loader"></div>
CSS
.loader {
display: inline-block;
width: 20px;
text-align: center;
font-size: 128px;
}
.controls a {
padding: 5px 10px;
color: blue;
border: 1px solid blue;
text-decoration: none;
}
/*
emoji fails to display:
on retina display @ 129px
on non-retina display @ 256px
Tested: OSX 10.9.5 Chrome Canary: Version 41.0.2272.2
*/
JavaScript
$(function () {
var seq = [
'π',
'π',
'π',
'π',
'π',
'π',
'π',
'π',
'π',
'π', ];
var i = 0;
var $loader = $('.loader');
var $size = $('.size');
$('.controls a').click(function (e) {
var $this = $(this);
$loader.css('font-size', function (i, size) {
size = parseInt(size);
$size.text(size);
return $this.hasClass('up') ? ++size : --size;
});
});
(function moon() {
setTimeout(function () {
el = document.getElementsByClassName('loader')[0];
el.textContent = seq[i];
i = (i === seq.length - 1) ? 0 : ++i;
moon();
}, 40);
})();
});