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

Cruzeiro

Cruzeiro: permanência de zagueiro é principal expectativa; veja quem sai

Zé Ivaldo, do Cruzeiro, comemora gol contra a Ponte Preta pela Série B do Brasileirão - Staff Images / CRUZEIRO
Zé Ivaldo, do Cruzeiro, comemora gol contra a Ponte Preta pela Série B do Brasileirão Imagem: Staff Images / CRUZEIRO

Lohanna Lima

Do UOL, em Belo Horizonte (MG)

10/11/2022 04h00

ada a euforia da conquista do o à Série A e do título de campeão brasileiro da Série B, o Cruzeiro volta as atenções com mais intensidade, agora, para o planejamento de 2023. A diretoria celeste precisa definir ainda a situação de contratos de alguns jogadores que foram importantes na atual temporada. Por outro lado, já há também algumas investidas no mercado, mas de maneira cautelosa, como sempre pregou a gestão da SAF de Ronaldo Nazário.

A permanência ou não do zagueiro Zé Ivaldo é a principal badalação do momento nos bastidores do Cruzeiro. O jogador foi um dos grandes nomes da temporada celeste, mas pertence ao Athletico-PR. Em seu contrato de empréstimo com a Raposa, não havia opção de compra ao final, o que faz que uma nova negociação tenha que ser aberta com os paranaenses. Vale lembrar que, devido ao bom desempenho, o atleta foi um dos que mais se valorizou ao fim da Série B.

Zé Ivaldo manifestou à diretoria do Cruzeiro que deseja permanecer. No entanto, ele voltou para Curitiba para esperar o desfecho da negociação. O clube também quer contar com o jogador, mas sem fazer altos investimentos.

Após a partida contra o CSA, no último domingo (6), que marcou a entrega da taça da competição ao clube, o diretor de futebol do Cruzeiro, Pedro Martins, comentou brevemente sobre os jogadores que ainda precisam negociar a situação contratual.

"Os casos todos já estão sendo solucionados. Só peço um pouco de calma porque no início de dezembro deve estar mais claro quem deve ficar", disse Pedro rapidamente na zona mista do Mineirão.

Enquanto não resolve a questão de Zé Ivaldo, o Cruzeiro já se movimentou no mercado para o setor. No mês ado, o clube anunciou a primeira contratação para 2023: o zagueiro Neris, que estava livre no mercado após agem pelo Al Hatem, da Arábia Saudita.

Quem sai do Cruzeiro

Dois nomes muito importantes na temporada celeste não vão permanecer: o volante Willian Oliveira e o lateral-esquerdo Matheus Bidu. Os dois atletas foram titulares com Pezzolano, mas serão devolvidos aos seus clubes.

No caso de Matheus Bidu, os valores foram entrave para que o jovem não permanecesse. Ele pertence ao Guarani e custaria à Raposa aproximadamente R$ 6 milhões — valor considerado alto pelo Cruzeiro, que já comunicou à equipe de Campinas que não vai exercer o direito de compra.

Alguns outros jogadores, no entanto, já sabem que não permanecerão no Cruzeiro. Entre eles estão os atacantes Lincoln e Rodolfo, o meia Chay, o zagueiro Wagner Leonardo, os volantes Pablo Siles e Rômulo, além do lateral-direito Leo Pais.

Cruzeiro