JSFiddle - React, Tailwind, and code Playground
by Neil Harlow
HTML
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css">
<script src="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/hammer.js/2.0.4/hammer.min.js"></script>
<div class="container-fluid">
<div class="row">
<div class="col-xs-12">
<button class="btn btn-default" id="click-me">click/press here</button>
</div>
</div>
<div class="row">
<div class="col-xs-3">
<p class="action onclick">native
<br>onclick</p>
</div>
<div class="col-xs-3">
<p class="action click">jquery
<br>click</p>
</div>
<div class="col-xs-3">
<p class="action touchstart">jquery
<br>touchstart</p>
</div>
<div class="col-xs-3">
<p class="action tap-hammer">hammer.js
<br>tap</p>
</div>
</div>
</div>
CSS
.container-fluid {
padding: 10px;
}
.btn {
width: 100%;
margin-bottom: 20px;
padding: 20px;
}
p.action {
text-align: center;
padding: 10px;
background-color: #64B5F6;
height: 15vh;
min-height: 60px;
-webkit-transition: height 250ms ease-in-out;
-moz-transition: height 250ms ease-in-out;
-o-transition: height 250ms ease-in-out;
transition: height 250ms ease-in-out;
}
p.action.active {
height: 50vh;
}
JavaScript
document.getElementById('click-me').addEventListener( 'click', function() {
$('.action.onclick').toggleClass('active');
});
// ======================== CLICK =======================
$('#click-me').on('click', function (event) {
$('.action.click').toggleClass('active');
});
// ======================== TOUCHSTART =======================
$('#click-me').on('touchstart', function (event) {
$('.action.touchstart').toggleClass('active');
});
// ======================== TAP (hammer.js) =======================
new Hammer(document.getElementById('click-me')).on('tap', function (event) {
$('.action.tap-hammer').toggleClass('active');
});