;(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

Internacional

Yuri Alberto vai de opção a curinga e vira artilheiro no Inter com Abel

Yuri Alberto comemora gol pelo Inter contra o Atlético-MG - Ricardo Duarte/Inter
Yuri Alberto comemora gol pelo Inter contra o Atlético-MG Imagem: Ricardo Duarte/Inter

Marinho Sladanha

Do UOL, em Porto Alegre

08/12/2020 04h00

Yuri Alberto tinha oito jogos desde sua chegada ao Internacional quando a comissão técnica foi trocada. Ainda que tivesse ficado fora por algum tempo em razão de uma lesão, o centroavante não estava perto do time titular ou era figura frequente no Colorado. O cenário, porém, mudou. Em campo, virou "curinga" do ataque e um dos mais valorizados com Abel Braga.

Apresentado em agosto pelo time gaúcho, Yuri Alberto — que custou R$ 10 milhões, pagos com auxílio de um investidor — esteve em campo por 290 minutos divididos em oito oportunidades com Eduardo Coudet no comando. Foram dois gols neste período.

Com Abel, em sete jogos, já esteve em campo por 299 minutos, anotou a mesma quantidade de gols e se mostrou alternativa em vários setores de ataque.

Contra o Atlético-MG, quando fez de cabeça o primeiro gol do empate em 2 a 2, Yuri começou jogando como extrema pelo lado esquerdo. Além de auxiliar o ataque, tinha por determinação acompanhar o lateral direito Guga e ocupar espaços na fase defensiva.

Diante do Santos, pelo Brasileiro, Yuri já tinha atuado aberto pelo lado oposto, além de também jogar como centroavante, sua posição natural.

Os dois gols colocam o jogador como artilheiro da 'era Abel Braga' no Inter. O time fez só quatro em sete partidas. Além dele, Peglow e Mauricio marcaram.

"Neste pouco tempo que estamos aqui, notamos que ele pode jogar nas três posições da frente. Aberto pela esquerda, pela direita ou de camisa nove. Ele entrega muito em campo", disse o auxiliar técnico Leomir.

É exatamente a capacidade de atacar e o esforço para defender, cumprindo exigências táticas pelo benefício coletivo, que mais agrada o comando do Inter no jogador de 19 anos.

"Ele se doa muito pela equipe. Nos ajuda com e sem a bola, é importantíssimo. Hoje [domingo, contra o Atlético-MG] pediu para sair, pois estava muito cansado, pela entrega que teve, voltando e acompanhando o adversário", completou Leomir.

Ter o jogador em campo dá alternativas para o time do Inter. A comissão técnica atual já usou quatro formações diferentes em sete jogos no comando do time. Com Yuri, as trocas podem ocorrer em meio aos jogos, deslocando o jogador para algum dos lados, ou centralizado.

Amanhã (9), o Colorado encara o Boca Juniors em jogo de volta das oitavas de final da Libertadores. Como perdeu em casa por 1 a 0, precisa reverter a vantagem para seguir na competição.

Internacional