JSFiddle - React, Tailwind, and code Playground
HTML
<img class='crossRotate' src="http://i.imgur.com/veWks0T.png" alt="" />
CSS
img {
display: block;
margin: 20px;
}
img {
-webkit-transition-duration: 0.5s;
-moz-transition-duration: 0.5s;
-o-transition-duration: 0.5s;
transition-duration: 0.5s;
-webkit-transition-property: -webkit-transform;
-moz-transition-property: -moz-transform;
-o-transition-property: -o-transform;
transition-property: transform;
}
JavaScript
$( ".crossRotate" ).click(function() {
var rotation = getRotationDegrees($(this)) + 36;
console.log(rotation);
$(this).css("transform","rotate("+rotation+"deg)");
});
function getRotationDegrees(obj) {
var matrix = obj.css("-webkit-transform") ||
obj.css("-moz-transform") ||
obj.css("-ms-transform") ||
obj.css("-o-transform") ||
obj.css("transform");
if(matrix !== 'none') {
var values = matrix.split('(')[1].split(')')[0].split(',');
var a = values[0];
var b = values[1];
var angle = Math.round(Math.atan2(b, a) * (180/Math.PI));
} else { var angle = 0; }
return (angle < 0) ? angle + 360 : angle;
}