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

Messi explica por que não voltará ao Barcelona: 'Queria muito'

Do UOL, em São Paulo

07/06/2023 16h44

Lionel Messi foi anunciado pelo Inter Miami nesta quarta-feira.

O que aconteceu

Messi detalhou por que não irá voltar ao Barcelona após ar dois anos no PSG. O argentino falou sobre o assunto em entrevista aos jornais catalães Mundo Deportivo e Sport.

"Queria muito, estava muito ansioso para poder voltar, mas depois de ter ado pelo que vivi e pela saída que tive, não queria ficar na mesma situação de novo: esperando para ver o que ia acontecer e ir embora meu futuro na mão de outro", disse Messi na entrevista.

O Barcelona não teria condições de acertar com Messi no momento. O clube apresentou plano de viabilidade financeira a La Liga, mas ainda precisaria se desfazer de jogadores para aportar o salário do argentino.

"Ouvi dizer que tinham de vender jogadores ou baixar os salários dos jogadores, e a verdade é que não queria ar por isso, nem me encarregar de obter algo que tivesse a ver com tudo isso", afirmou o novo jogador do Inter Miami.

Fala completa de Lionel Messi sobre o Barcelona

"Sim, a verdade é que obviamente queria muito, estava muito ansioso por poder voltar, mas, por outro lado, depois de ter vivido o que vivi e a saída que tive, não queria estar na mesma situação novamente: esperar para ver o que aconteceria e deixar meu futuro nas mãos de outra pessoa, por assim dizer. Eu queria tomar minha própria decisão, pensando em mim, na minha família. Apesar de ter ouvido falar que La Liga tinha aceitado tudo e que estava tudo bem para voltar, ainda havia muitas outras coisas que precisavam ser feitas. Ouvi dizer que tinham de vender jogadores ou baixar os salários dos jogadores, e a verdade é que não queria ar por isso, nem me encarregar de obter algo que tivesse a ver com tudo isso. Já fui acusado de muitas coisas que não eram verdade na minha carreira no Barcelona e já estava um pouco cansado, não queria ar por tudo aquilo. Na hora que tive que sair, La Liga também aceitou que me contratassem e no final não deu. Eu estava com medo de que acontecesse a mesma coisa de novo e eu tivesse que ar pela tourada como aconteceu, que eu tivesse que vir aqui para Paris para ficar muito tempo em um hotel com minha família, com meus filhos indo à escola e ainda estando no hotel... Queria tomar minha própria decisão e por isso não recorri ao Barça. Embora eu teria adorado, não poderia. Também estou em um momento em que quero sair um pouco do foco, pensar mais na minha família. Como ia dizendo, ei dois anos a nível familiar que foi tão ruim que não gostei. Tive o mês que foi espetacular para mim por ter vencido a Copa do Mundo, mas tirar isso foi uma etapa difícil para mim. Quero reencontrar o prazer, com o prazer da minha família, dos meus filhos, dia após dia".