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

Montanha-russa

Jair Ventura planeja retomar carreira após quarentena; ele chama Corinthians de "prova de maturidade"

Gabriel Carneiro Do UOL, em São Paulo Marcello Zambrana/AGIF

Foram dias de um constrangimento tão forte na rotina do Corinthians que dava quase para tocar.

Enquanto Jair Ventura comandava treinos e jogos na reta final do Campeonato Brasileiro de 2018, o clube negociava o retorno de Fábio Carille. Conversas iniciais e detalhes que levaram ao acerto eram publicados diariamente pela imprensa. Não tinha segredo para dirigentes, jornalistas, funcionários, jogadores e nem para o próprio técnico, por mais que versões e declarações oficiais indicassem o contrário.

"Foi difícil saber tudo o que estava acontecendo e ser a mesma pessoa. Eu não mudei uma vírgula na minha rotina. Da mesma maneira que cheguei eu saí do Corinthians. Acabou que aconteceu o que todos previam."

Aos 39 anos, ele viu escorrer entre os dedos a temporada que era para ser sua consagração. A demissão aconteceu em 3 de dezembro, dia seguinte a uma derrota para o Grêmio. Já são mais de 500 dias sem o nome numa ficha técnica depois de um episódio que ficou marcado de maneira superlativa na vida: "Foi o momento mais difícil da minha carreira, sem dúvida. Continuar o trabalho tendo que fazer com que os jogadores me vissem como comandante."

Foi a maior prova de maturidade da minha vida.

Jair conta nesta entrevista ao UOL Esporte que se vê melhor e mais forte depois do episódio. Ele desenvolveu estratégias de defesa e enfrentamento de rótulos que carrega desde antes, quando trabalhou no Botafogo e no Santos, enumera os grandes jogadores de quem participou da formação e conta que espera trabalhar ainda em 2020, mais de um ano depois da montanha-russa de emoções vivida no Corinthians: "Por isso meu ano sabático. Foi demais."

Marcello Zambrana/AGIF

Clique para assistir à entrevista de Jair Ventura

Marcello Zambrana/AGIF

"Tem que saber perder": 88 dias como técnico do Corinthians

Durou menos de três meses o último trabalho de Jair Ventura. Os altos e baixos foram tão acentuados que ele viu a necessidade de uma pausa na carreira: foi emoção demais. Contratado em setembro de 2018, ele estreou em um clássico fora de casa contra o Palmeiras. Na sequência, enfrentou o Flamengo no Maracanã pela ida das semifinais da Copa do Brasil. Missões pesadas logo de cara.

Antes do jogo de volta contra os rubro-negros, vivenciou um treino aberto para mais de 40 mil torcedores na Arena Corinthians: "Falei com o Andrés [presidente do clube] que era o único treino que eu tinha para fazer uma jogada ensaiada, uma bola parada, e ele: 'está bem, o que eu falo para a Fiel?'. Não tem jeito, vamos abrir. Foi de arrepiar, torcida apoiando, cantando. Muita gente na rua agradecendo pela primeira vez que foram à Arena. Uma pena que acabamos perdendo o título."

Depois de ar pelo Flamengo, o Corinthians de Jair Ventura perdeu o primeiro jogo da final para o Cruzeiro e trouxe a decisão para Itaquera. Foi o jogo da polêmica: a arbitragem de vídeo anulou um gol de Pedrinho que colocaria o time da casa na frente (2 a 1) aos 24 do segundo tempo, por falta de Jadson em Dedé. O Cruzeiro venceu por 2 a 1 e foi campeão. Jair saiu da Arena sem chances de ficar em 2019.

Se você pegar minha coletiva, no dia eu não falei, mas agora posso: não foi falta do Jadson no Dedé. Mas agora já era, agora fica choro. Falar de arbitragem é chororô, tem que saber perder. Treinador tem que saber perder. Vamos para a próxima e que a gente corrija o erro com gol

Jair Ventura, sobre a polêmica arbitragem de 2018

Eu faria tudo de novo hoje, pela grandeza do clube. Sou amigo de muitos treinadores que tiveram chance de ir para grandes clubes e perderam a oportunidade de vestir aquela grande camisa. Eu estive, cheguei a uma final, dei um treino aberto, inesquecível na minha vida

E a agem pelo Corinthians

"Você quer falar de algum rótulo".

Ler mais

Zô Guimarães/UOL

Carlos Alberto: "Eu bebia, fumava e fazia outras coisinhas mais. Mas chegava e corria".

Ler mais
Sergio Lima/Folha Imagem

Pontos corridos: São Paulo é o melhor do Brasileirão na classificação acumulada desde 2003.

Ler mais
Topo