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

Navas choca PSG com versão baladeira e vira protetor de Neymar

João Henrique Marques

Do UOL, em Paris (FRA)

02/03/2020 12h00

A imagem de Keylor Navas girando a camisa ao lado de Neymar e Cavani em uma festa em Paris deixou a diretoria do Paris Saint-Germain estarrecida. Pouco tempo antes, nos dias de folga, sua opção foi a de viajar até a Costa Rica para curtir festa com a família. Na versão baladeira vivida no novo clube, o camisa 1 surpreendeu os dirigentes que confiavam no perfil reservado apresentado no Real Madrid. No PSG, Navas é visto como um dos líderes do elenco, tem carinho com Neymar e já defendeu o brasileiro em atritos com dirigentes.

Experiente aos 33 anos, e com 3 títulos de Liga dos Campeões como goleiro titular do Real Madrid, Navas levanta a voz no PSG. Ao ouvir Leonardo, o diretor do clube, reclamar com o elenco da exposição negativa provocada por festa dois dias depois da derrota por 2 a 1 para o Borussia Dortmund, pela Liga dos Campeões, a reação do goleiro foi a de opinar que um clube grande não deveria se preocupar com o que acontece em redes sociais. De acordo com o jornal francês "L'Equipe", Navas foi enérgico na discussão com Leonardo.

Pelo comportamento impulsivo e avaliação de intransigência, Navas foi punido pela comissão técnica com ausência na vitória por 4 a 3 sobre o Bordeaux, no dia 22 de fevereiro. O retorno aconteceu no sábado no triunfo por 4 a 0 contra o Dijon.

"Eu sempre defenderei meus companheiros. O ambiente que vivemos aqui é bom, e também me sinto defendido por eles. Nós trabalhamos sério dentro de campo, e isso é o que importa", disse Navas após a partida.

A relação com Neymar

Neymar posta foto ao lado de Navas - Reprodução - Reprodução
Imagem: Reprodução

Com grande apreço e sentindo-se protegido, Neymar exibiu logo após a reunião do elenco do Leonardo, uma foto com Navas no vestiário. "2 loucos" legendou o brasileiro empolgado com a amizade.

O relacionamento de Neymar com Navas é impulsionado pelo domínio do brasileiro do idioma espanhol. Juntos, eles já visitaram a Euro Disney, em Paris, em dia de folga.

Navas foi à festa de aniversário de Neymar em Paris com a família. Já no aniversário comemorado em conjunto com Cavani, Di Maria e Icardi, são vários os vídeos que o goleiro aparece dançando funk ao lado do atacante brasileiro.

A empolgação com a vida noturna é surpreendente, e pouco midiática. Por exemplo, no mesmo dia em que Neymar ficou marcado por um vídeo de festa no final de ano no Brasil ao lado de Gabriel Medina, Navas estava curtindo o aniversário de 18 anos da filha em balada na Costa Rica.

Versão festeira empolga Costa Rica

Ver Navas divertindo-se foi novidade bem recebida na Costa Rica. O perfil tímido do maior jogador da história do país estava relacionado aos momentos complicados vividos no Real Madrid.

"Está nítido que Navas está mais relaxado, tranquilo. Saiu de um ambiente desfavorável de perseguição da imprensa e de baixa aceitação de Florentino Pérez [presidente do Real Madrid] em que vivia apesar dos resultados. Agora ele é uma das grandes figuras do PSG, e recebe carinho do elenco e da torcida", comentou Kevin Barrantes, jornalista costa-riquenho do Facebook América Latina.

"O costa-riquenho gostou de ver Navas feliz com Neymar. A amizade deles é empolgante. Fazer festa fora de campo não foi discussão na Costa Rica. O que o Navas apresenta dentro de campo tem maior valor", concluiu o jornalista.

O ótimo rendimento no PSG

Navas foi comprado em agosto pelo PSG por 15 milhões de euros (R$ 74 mi). A quantia soa como simbólica entre grandes clubes no mercado atual e representa, por exemplo, 5% dos 300 milhões de euros (R$ 1,48 bi) exigidos pelo PSG para liberar Neymar. A negociação ainda teve o envolvimento do francês Alphonse Areola. O então titular do PSG foi emprestado ao Real por um ano.

Logo no início da agem pelo PSG, Navas empolgou a torcida com belas defesas. Completou os 4 primeiros jogos sem sequer levar gol. Na primeira fase da Liga dos Campeões, deixou o campo como melhor jogador da partida nas vitórias por 3 a 0 contra o Real Madrid, e 1 a 0 diante do Galatasaray. Na fase de grupos, sofreu apenas 2 gols, em 6 jogos.

Para a mídia sa, a avaliação geral é de que após o insucesso de Buffon na temporada anterior, Navas conseguiu elevar o nível de confiança do time. No Campeonato Francês, ele tem 16 gols sofridos, em 21 jogos.