JSFiddle - React, Tailwind, and code Playground

by Kai

HTML

<div class="container">
    <img id="spinner" src="http://www.sergeychernyshev.com/blog/wp-content/uploads/2009/04/showslow.png">
</div>

CSS

.container {
    width: 250px;
    height: 250px;
    border: solid 2px #000;
    border-radius: 5px;
    text-align: center;    
}

#spinner {
    margin: 25%;
}

JavaScript

function getTransformProperty(element) {
    var properties = [
        'transform',
        'WebkitTransform',
        'MozTransform',
        'msTransform',
        'OTransform'
    ];
    var p;
    while (p = properties.shift()) {
        if (typeof element.style[p] != 'undefined') {
            return p;
        }
    }
    return false;
}

var img = document.getElementById('spinner');
var property = getTransformProperty(img);
if (property) {
    var d = 0;
    setInterval(
        function () {
            img.style[property] = 'rotate(' + (d++ % 360) + 'deg)';
        },
        1
    );
}