$(function() { var element = $('#produtos'); var template = element.html(); Mustache.parse(template); var array = new Array(); loadSync('storage.json', function(json) { $.each(json.produtos, function(index, item) { createModel(item, function(produto) { array.push(produto); }); }); }); var rendered = Mustache.render(template, array); element.html(rendered); }); function createModel(obj, callback) { var url = obj.diretorio + '/pt-br/versoesDisponiveis.json'; loadSync(url, function(info) { callback({ nome: obj.nome, url: obj.diretorio + '/pt-br/v_' + info.atual.replace(/\./g, '_') + '/index.html' }); }); } function loadSync(url, success) { //Usado pelo Dev para testar localmente //const proxyurl = "https://cors-anywhere.herokuapp.com/"; //console.log(url); //if(url != "storage.json") // url = proxyurl + url; $.ajax({ url: url, dataType: 'json', async: false, success: success }); }