Skip to content

Instantly share code, notes, and snippets.

@micha-sky
Created May 24, 2020 13:43
Show Gist options
  • Save micha-sky/cc61ba859096f9695c5e844b96558885 to your computer and use it in GitHub Desktop.
Save micha-sky/cc61ba859096f9695c5e844b96558885 to your computer and use it in GitHub Desktop.
<script>
$(document).ready(function(){
var x = 100;
var y = 0;
setInterval(function(){
x += 1;
y += 1;
var element = document.getElementById('cube');
element.style.webkitTransform = "translateZ(-100px) rotateY("+x+"deg) rotateX("+y+"deg)"; //for safari and chrome
element.style.MozTransform = "translateZ(-100px) rotateY("+x+"deg) rotateX("+y+"deg)"; //for firefox
},50);
//for other browsers use: "msTransform", "OTransform", "transform"
});
</script>
<script>
//Get the element you want to animate
var testElement = $('.test');
function run(v){
//Reverse the array
var reversed = JSON.parse(JSON.stringify(v)).reverse();
$(v[0]).animate(v[1], {
duration: 3500,
step: function(val) {
//Adding the transform to your element
testElement.css("transform", `rotateX(${val}deg) rotateZ(${val}deg) rotateY(${val * 2}deg)`);
},
done: function(){
//Re-running the function but in reverse with the reverse we did above.
run(reversed)
}
})
};
run([{y:-100}, {y:100}])
</script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment