JSFiddle - React, Tailwind, and code Playground
HTML
<button id="start">Start</button>
<button id="stop">Stop</button>
<div></div>
CSS
div { margin:3px; width:40px; height:40px;
position:absolute; left:0px; top:30px;
background:green; display:none; }
div.newcolor { background:blue; }
JavaScript
$("#start").click(function() {
$("div").show("slow");
$("div").animate({
left: '+=200'
}, 5000);
jQuery.queue($("div")[0], "fx", function() {
$(this).addClass("newcolor");
jQuery.dequeue(this);
});
$("div").animate({
left: '-=200'
}, 1500);
jQuery.queue($("div")[0], "fx", function() {
$(this).removeClass("newcolor");
jQuery.dequeue(this);
});
$("div").slideUp();
});
$("#stop").click(function() {
jQuery.queue($("div")[0], "fx", []);
$("div").stop();
});