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

Palmeiras

Palmeiras não aproveita mando e perde ponto em todos os jogos no Allianz

Palmeiras perdeu pontos no Allianz Parque neste Brasileirão - Divulgação
Palmeiras perdeu pontos no Allianz Parque neste Brasileirão Imagem: Divulgação

Thiago Ferri

Do UOL, em São Paulo

14/09/2020 04h00

O Palmeiras está a apenas três pontos do líder Internacional e tem um jogo a menos no Campeonato Brasileiro, mas a situação poderia ser melhor, não fossem os tropeços no Allianz Parque. O time fez três jogos em sua arena e empatou todos: contra Goiás, Inter e agora Sport (2 a 2 no último domingo). A única vitória como mandante veio contra o Santos, no estádio do Morumbi.

O último triunfo em sua arena foi na semifinal do Campeonato Paulista, contra a Ponte Preta, dia 2 de agosto. Na decisão contra o Corinthians, novo empate em 1 a 1 - a conquista se deu nos pênaltis. Vanderlei Luxemburgo considera que a ausência de torcedores têm influência na sequência.

"Não vencemos na nossa casa, né. Nós tentamos, mas uma coisa que acontece muito em casa e não tem agora é a presença da torcida. O adversário não sente, o jogo fica mais jogado, sem aquela emoção do estádio. Isto é para todas as equipes, tanto que no mundo, no começo da pandemia, os mandantes não conseguiam ganhar. Vamos continuar trabalhando. Temos um estádio muito bom, um gramado diferente, mas que dá para jogar futebol com qualidade. Não ganhamos os três jogos aqui, infelizmente", disse.

O contexto dos três empates deixa um sabor ainda mais amargo para o palmeirense: contra Goiás e Sport, times da segunda metade da tabela, o Palmeiras chegou a estar na frente do placar, e o Internacional jogou com reservas. Nem a novidade do gramado sintético vem gerando grande vantagem.

O Verdão tem apenas a 13ª melhor campanha do Brasileiro como mandante, e tem compensado fora de casa: é o segundo visitante com mais pontos até aqui. Os próximos dois jogos da equipe serão longe do Allianz Parque: na quarta (16), visita o Bolívar (BOL), pela Copa Libertadores, e no domingo (20), duela com o Grêmio, em Porto Alegre (RS), pelo Campeonato Brasileiro.

Palmeiras