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

Invencibilidade do Palmeiras é a maior da história do time em início de BR

O Palmeiras ainda possui um jogo a menos do que a maioria dos demais times - Marcello Zambrana/AGIF
O Palmeiras ainda possui um jogo a menos do que a maioria dos demais times Imagem: Marcello Zambrana/AGIF

05/10/2020 08h00

Com a vitória sobre o Ceará por 2 a 1 no último sábado (03), no Allianz Parque, o Palmeiras completou, de forma inédita, a 13ª rodada do Brasileirão na era dos pontos corridos com 20 clubes (desde 2006) sem saber o que é ser derrotado.

Apesar de caminhar para a 14ª rodada, o Verdão possui um jogo a menos do que a maioria dos demais times, uma vez que o duelo contra o Vasco, em casa, na primeira rodada do campeonato, precisou ser adiado por conta das finais do Paulistão. Ainda não há data prevista para a realização deste confronto.

Além dos 12 compromissos pelo Brasileirão, o Palmeiras chegou a 20 jogos de invencibilidade na temporada - a segunda maior marca do clube no século, somente atrás das 22 partidas entre o fim de 2011 e o início de 2012.

Em 2019, o Alviverde foi conhecer a sua primeira derrota no Campeonato Brasileiro justamente contra o Ceará, mas na 11ª rodada. Então líder do torneio, a equipe de Luiz Felipe Scolari viu cair uma invencibilidade de 33 jogos (considerando apenas o Brasileirão) - a maior sequência da história do clube na competição. Aquela partida também marcou a estreia do volante Ramires.

A marca do Palmeiras de invencibilidade nos 12 primeiros jogos já é a terceira maior da história do Brasileirão na era dos pontos corridos, ficando somente atrás do Flamengo de 2011 que, também comandado por Vanderlei Luxemburgo, foi perder seu primeiro jogo na 16ª rodada; e do Corinthians de 2017 que foi derrotado somente na primeira partida do segundo turno (20ª rodada) daquela edição.

Embora seja o único invicto do Brasileirão 2020, o Verdão já possui sete empates e ocupa a terceira colocação na tabela, com 22 pontos - cinco a menos do que o líder Atlético Mineiro.

Palmeiras