let InfiniteRotator = { init: function () { let targetTag = 'img.rotating-item'; let initialFadeIn = 1000; //initial fade-in time (in milliseconds) let itemInterval = 2500; //interval between items (in milliseconds) let fadeTime = 1000; //cross-fade time (in milliseconds) let numberOfItems = $(targetTag).length;//count number of items let currentItem = 3; //set current item $(targetTag).eq(currentItem).animate({opacity: '1'}, initialFadeIn);//show first item let infiniteLoop = setInterval(function () {//loop through the items $(targetTag).eq(currentItem).animate({opacity: '0'}, fadeTime); if (currentItem === numberOfItems - 1) { currentItem = 0; } else { currentItem++; } $(targetTag).eq(currentItem).animate({opacity: '1'}, fadeTime); }, itemInterval); } }; InfiniteRotator.init();