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

Técnico da França faz mistério sobre Benzema na final da Copa do Mundo

Benzema já teria condições de jogo desde as oitavas de final, informou o "Marca" - Frankie Fife/AFP
Benzema já teria condições de jogo desde as oitavas de final, informou o "Marca" Imagem: Frankie Fife/AFP
Gabriel Carneiro, Igor Siqueira, Danilo Lavieri e Rodrigo Mattos

Do UOL, em Doha (Qatar)

14/12/2022 20h15

Classificação e Jogos

Uma pergunta na coletiva de imprensa logo após a classificação da França para a final da Copa do Mundo tirou do rumo o técnico Didier Deschamps. Um jornalista disse que tinha visto vídeos de treinos de Karim Benzema em boa forma e questionou se há alguma chance de o atacante do Real Madrid ser opção contra a Argentina no próximo domingo.

Deschamps riu, olhou de lado e disse apenas o seguinte: "Prefiro ar para a próxima pergunta."

O mistério de Deschamps mantém no ar uma das principais polêmicas do futebol francês nos últimos dias. É que a edição de ontem (13) do jornal espanhol "Marca" informou que Benzema já poderia estar em campo desde as oitavas de final da Copa porque está totalmente recuperado da lesão muscular na coxa esquerda que lhe tirou a chance de jogar o torneio.

Ainda segundo a publicação, a decisão de Deschamps em cortar o atacante de 34 anos da Copa do Mundo foi precipitada, o que pode justificar a reação com poucas palavras do treinador. Benzema se machucou durante um treino no Qatar e viajou de volta para a Europa.

Vale lembrar que Benzema não foi oficialmente cortado da lista de inscritos e nenhum substituto foi convocado, o que significa que ele tem condições de jogo segundo as regras.

A bagagem de Benzema na Copa do Mundo se limita à participação no Brasil em 2014, quando foi titular nas cinco partidas que a França disputou até a eliminação para a Alemanha nas quartas de final. Ele ficou afastado da seleção entre 2015 e 2021 por indisciplina e má relação com Deschamps e por isso não foi campeão mundial em 2018. Ele voltou a ser convocado em junho de 2021, após se resolver com o treinador.

Nas redes sociais, o recém-eleito melhor jogador do mundo tem postado mensagens de apoio à seleção.

Além da declaração misteriosa na pergunta sobre Benzema, Deschamps comemorou a classificação sa para a final da Copa: "Fico sempre orgulhoso quando alcanço algo como isso, é especial disputar mais uma final no domingo. Não foi uma vitória fácil, mostramos nossa qualidade e nosso espírito de equipe, mas tivemos momentos desafiadores na partida, realmente. Minha sensação de agora está entre a emoção e o orgulho. É mais um o e ainda falta outro. Estar de novo numa final é maravilhoso."

Deschamps não quis escalar o time da final contra a Argentina, mas disse que Upamecano e Rabiot devem ter condições de jogo. Eles foram desfalques nesta quarta-feira com sintomas de gripe.