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

OPINIÃO

Rodrigues: 'A cada jogo, Vinícius Júnior está mais à vontade na seleção'

Do UOL, em São Paulo

25/03/2022 00h43

Se no início havia relutância para Tite convocar Vinícius Júnior para a seleção brasileira, hoje o atacante tem presença garantida na equipe. Ontem (25), o jogador do Real Madrid foi titular na partida contra o Chile, pelas Eliminatórias Sul-Americanas da Copa-2022. Um dos gols na goleada por 4 a 0 no Maracanã foi dele, o primeiro com a camisa amarela.

No Fim de Papo, programa ao vivo do UOL Esporte transmitido após os jogos da seleção brasileira, os jornalistas Renato Maurício Prado, Alícia Klein e Rodolfo Rodrigues analisaram a evolução de Vinícius Júnior pela seleção brasileira e o consideram com um jogador fundamental para a equipe comandada por Tite.

"Gostei da atuação dele. O Vinícius Júnior jogou bem aberto e estava bem a fim de jogo, principalmente nos minutos iniciais, pedindo e recebendo bola e partindo para cima, bem a sua característica. Ele não sentiu, por jogar em casa e no Maracanã. A cada joga que a, está mais à vontade na seleção brasileira", elogiou Rodrigues.

O colunista do UOL destacou que o bom futebol de Vinícius Júnior na seleção é um reflexo da boa temporada dele pelo Real Madrid. "Ele tem atuado da mesma forma como joga no Real Madrid nesta temporada. Não está se escondendo e não tem medo de errar. Às vezes, dá uma entortada, mas mantém a pegada e a vontade. É um jogador muito voluntarioso, sempre jogando para cima e tentando alguma coisa. Ele foi bem e é uma peça super importante para a seleção brasileira", comentou.

Para Rodrigues, o jovem atacante, de 21 anos, tem presença garantida na Copa do Qatar. Mesmo se ele ficar como opção no banco, será crucial para os planos táticos de Tite. "Mesmo não sendo titular, será muito útil. Vai entrar no segundo tempo e mudará o panorama da partida. Ele vem em uma fase muito boa pelo Real Madrid. Tem feito gols e dado assistências, formando uma dupla sensacional com o Benzema", disse.

Recompensado com seu primeiro gol pela seleção, Vinícius Júnior poderia ter tido uma atuação ainda melhor contra os chilenos caso a parceria com Neymar fosse mais produtiva. "Talvez se Neymar estivesse em um dia mais inspirado, talvez o futebol do Vinícius Júnior tivesse aparecido um pouquinho mais, mas eu gostei dele", concluiu Rodrigues.

Não perca! A próxima edição do Fim de Papo será na próxima terça-feira (29), logo após a partida contra a Bolívia pelas Eliminatórias Sul-Americanas da Copa-2022. Você pode acompanhar o programa ao vivo pelo Canal UOL e pelo canal do UOL Esporte no Youtube.