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

Palmeirenses esbravejam nas redes por centroavante que não veio na janela

Abel Ferreira lamenta durante Atlético-MG x Palmeiras pelo Brasileirão - Fernando Moreno/AGIF
Abel Ferreira lamenta durante Atlético-MG x Palmeiras pelo Brasileirão Imagem: Fernando Moreno/AGIF

Diego Iwata Lima

De São Paulo

01/09/2021 04h00

O torcedor palmeirense não está satisfeito. O clube é vice-líder no Brasileirão e semifinalista na Libertadores. O elenco é o mesmo que ganhou o continental e a Copa do Brasil, com um Viña a menos e um Dudu a mais. Mas o palestrino está inquieto. E o motivo talvez esteja nos clubes rivais, na comparação com o seu.

Nas redes sociais, uma boa parte da torcida alviverde está indignada com o fato de o Palmeiras não ter contratado um nome de mais peso na janela de transferências internacionais que se encerrou ontem —o que é meia-verdade apenas.

Para a atual temporada, o Palmeiras trouxe os volantes Danilo Barbosa e Matheus Fernandes, os laterais esquerdos Jorge e Piquerez, repatriou Deyverson e nada menos que Dudu, talvez o jogador mais prolífico do clube nos últimos dez anos. Mas para uma parcela dos torcedores, esse contingente não fez frente às movimentações dos adversários.

O Atlético-MG, oponente do Palmeiras na semi da Libertadores, que já tinha contratado Nacho Fernández e Hulk, entre outros, fechou com Diego Costa. O Corinthians, de baciada, trouxe Giuliano, Renato Augusto, Roger Guedes, João Pedro e Willian. E o São Paulo trouxe de volta Jonathan Calleri.

Entre protestos menos e mais bem humorados, o Palmeiras vem sendo objeto de memes com o que vem sendo considerado inércia da diretoria para contratar. E a posição mais criticada é a de centroavante. Com Deyverson em momento ruim e Luiz Adriano em uma fase ainda pior, já que nem mesmo tem entrado em campo, o torcedor se questiona: quem vai fazer os gols que o time precisa?

O artilheiro do time no Brasileiro está no banco de reservas

A fase ruim dos homens de frente do Palmeiras se reflete na tábua de artilheiros do Campeonato Brasileiro. Enquanto o Flamengo tem Bruno Henrique (8) como seu goleador, e o Galo tem Hulk (7), Breno Lopes, com cinco bolas na rede, é quem fez mais gols pelo Alviverde no torneio. Mas Breno, que é reserva, já não faz gols há mais de um mês. Seu último saiu contra o Atlético-GO, em Goiás. na vitória por 2 a 0.

De lá para cá, o Palmeiras teve a seu favor dois gols contra —Manoel, do Fluminense, e Titi, do Bahia—, um gol de cabeça de Luan, um de Willian e um de Rony, de pé esquerdo, encerrando um jejum particular que já girava em torno de três meses.

Na entrevista coletiva após a vitória sobre o Athletico-PR, no sábado (28), Abel Ferreira exaltou a força coletiva de seu ataque, ressaltando que sua linha de frente é a melhor da Libertadores e a segunda melhor do Brasileirão. E comemorou o gol de Rony, o segundo do time no jogo, que deu a vitória ao Palmeiras.

"Ficamos muito felizes, sobretudo por ele poder usar o pé esquerdo. Às vezes, os jogadores se habituam com alguma coisa. Depois, ficam com aquilo na cabeça e o gesto motor não sai de acordo com o que queremos", disse o técnico.

O português também falou de Luiz Adriano, com quem espera poder contar. "Está trabalhando para voltar à melhor forma e tenho certeza absoluta que, nesta temporada, ainda vai nos ajudar. Como o jogador que é, um dos capitães, sabe que tem importância no nosso grupo quando joga e quando não joga", disse ele, após o triunfo sobre o Athletico-PR.

E talvez, nas voltas de Rony e de Luiz Adriano, esteja a chave para o Palmeiras ter um desempenho melhor no restante da temporada. Se os dois principais nomes do ataque voltarem ao desempenho de 2020, o Palmeiras terá duas importantes "contratações" numa janela não de transferência, mas de recuperação, dentro do próprio elenco.