// Set previous ticker var previousTicker = []; async function updateTicker(firstTime){ firstTime = firstTime || null; var myDiv = document.getElementsByClassName('market-ticker'); if(myDiv.length > 0) { var element; var image; var price; var difference = 0; var screenWidth = window.innerWidth; var myHeaders = new Headers(); var myInit = { method: 'GET', headers: myHeaders, mode: 'cors', cache: 'default' }; fetch('https://www.binance.me/api/v3/ticker/price?symbols=["BTCUSDT","ETHUSDT","XRPUSDT","LTCUSDT","SOLUSDT","BNBUSDT"]',myInit) .then( response=>response.json() ) .then( data=>{ // Clean containers for(var a = 0; a < myDiv.length; a++) { myDiv[a].innerHTML = ''; for(var z = 0; z < data.length; z++) { if(data[z]['symbol'] !== undefined) { // Create element element = document.createElement('strong'); element.className = 'show-inline-block padding-small small'; // Coin coin = data[z]['symbol'].replace('USDT', ''); // Image image = document.createElement('img'); image.src = '/modules/market-reports/svg/' + coin + '.svg'; image.style.height = '15px'; image.style.width = '15px'; image.setAttribute('width', '15'); image.setAttribute('height', '15'); image.setAttribute('alt', 'Logo of cryptocurrency' + coin); // Price price = document.createElement('span'); price.innerHTML = ' \$' + parseFloat(data[z]['price']); if(previousTicker[coin] !== 'undefined') { difference = previousTicker[coin] - parseFloat(data[z]['price']); if(difference < 0) { price.className = 'text-green'; price.innerHTML = price.innerHTML + ' ↑' } else if(difference > 0) { price.className = 'text-red'; price.innerHTML = price.innerHTML + ' ↓' } else { price.innerHTML = price.innerHTML + ' =' } } // Append children to element element.appendChild(image); element.appendChild(price); // Stop loop at 3 pairs on small screens if(screenWidth < 600) { if(z == 2) { z = 999; } } } // Append element to containers myDiv[a].appendChild(element); } } // Update previous ticker for(z = 0; z < data.length; z++) { if(data[z]['symbol'] !== undefined) { // Coin coin = data[z]['symbol'].replace('USDT', ''); previousTicker[coin] = parseFloat(data[z]['price']); } } } ) .then( data=>{ setTimeout(updateTicker, 3333); if(firstTime == 1) { scrollMenu(); } }); } } updateTicker(1);