;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Mais da metade dos convocados por Tite desde a Copa é estreante na seleção

Gabriel Carneiro

Do UOL, em São Paulo

27/08/2021 16h11

Tite anunciou hoje (27) as convocações de nove jogadores para três rodadas das Eliminatórias da Copa do Mundo do Qatar em setembro. Até segunda ordem, eles são os substitutos dos nove que atuam na Inglaterra e não serão liberados por acordo unânime de seus clubes.

Dentro desta lista suplementar há quatro jogadores que jamais tinham sido chamados para a seleção brasileira: Everson (Atlético-MG), Edenilson (Internacional), Gérson (Olympique de Marselha-FRA) e Matheus Nunes (Sporting-POR). Completam a lista alguns rostos mais conhecidos: Santos (Athletico-PR), Miranda (São Paulo), Malcom (Zenit), Vini Jr (Real Madrid) e Hulk (Atlético-MG).

Segundo contabilizou o UOL, Tite já convocou 79 jogadores diferentes para a seleção desde a Copa do Mundo da Rússia em 13 diferentes listas. Destes 79 são 41 estreantes, nomes que jamais haviam recebido uma chance. O grupo de novatos representa mais da metade do total de convocados. Veja a lista:

  • Goleiros (7): Santos, Everson, Hugo, Phelipe, Gabriel Brazão, Ivan e Daniel Fuzato;
  • Laterais-direitos (3): Emerson, Gabriel Menino e Marcinho;
  • Laterais-esquerdos (3): Renan Lodi, Alex Telles e Guilherme Arana;
  • Zagueiros (6): Éder Militão, Lucas Veríssimo, Samir, Pablo, Diego Carlos e Léo Ortiz;
  • Volantes (6): Douglas Luiz, Allan, Bruno Guimarães, Matheus Henrique, Gérson e Edenilson;
  • Meias (4): Lucas Paquetá, Andreas Pereira, Claudinho e Matheus Nunes;
  • Atacantes (12): Richarlison, Éverton Cebolinha, Vini Jr, David Neres, Pedro, Matheus Cunha, Rodrygo, Malcom, Bruno Henrique, Wesley Moraes, Thiago Galhardo e Raphinha.

Caso a convocação de Raphinha seja de fato cancelada, o número total de convocados cai para 78. Ele atua no Leeds United-ING e teria a primeira chance.

Além das quatro novidades suplementares, a lista para setembro também tem o estreante Claudinho, ex-Red Bull Bragantino e recém-contratado pelo Zenit, da Rússia. O zagueiro Lucas Veríssimo recebeu a segunda convocação, mas precisou ser cortado da primeira por lesão e vive a expectativa de enfim ficar à disposição do grupo de jogadores.

A apresentação do elenco começa neste fim de semana e há três treinamentos agendados a partir de segunda-feira (30), no CT do Corinthians. O primeiro dos três jogos agendados será no dia 2, quinta-feira, às 22h, contra o Chile, no Estádio Monumental de Santiago. Depois o Brasil tem pela frente a Argentina e o Peru como mandante, nos dias 5 e 9.