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

Brasileirão - 2021

Com um a mais, Corinthians vacila e cede empate para o Fluminense

Colaboração para o UOL, em Belo Horizonte

27/06/2021 17h55

O Corinthians teve tudo para conquistar a vitória na tarde deste domingo (27) diante do Fluminense, em São Januário, em partida válida pela sétima rodada do Brasileirão. Com um a mais e à frente do placar, a equipe corintiana acabou cedendo o empate em 1 a 1 para o Tricolor. Jô, para o Corinthians e Cazares, para o Flu, anotaram os gols da partida.

Durante o primeiro tempo, o Flu ofereceu perigo com as finalizações de Abel Hernández, mas foi o Corinthians quem marcou primeiro. Gustavo Silva sofreu pênalti e Jô cobrou com perfeição. O uruguaio foi personagem também no início da segunda etapa, quando foi expulso após dividida com o volante Gabriel. Mesmo com um a menos, o Flu seguiu no ataque e conseguiu empatar a partida com Cazares.

O empate não altera tanto a situação dos clubes na tabela. Corinthians agora ocupa a 10ª colocação, com nove pontos e o Fluminense com 10 pontos está em oitavo lugar. O próximo jogo do Timão é contra o São Paulo, na quarta (30), às 21h30, em Itaquera. Já o Fluminense também entra em campo na quarta, mas contra o Athletico-PR, às 16h, no Rio de Janeiro.

FLU PERDE BOAS CHANCES

O atacante Abel Hernández, que estava no lugar do poupado Fred, foi quem mais incomodou o Corinthians no primeiro tempo. O uruguaio teve duas chances para abrir o placar ainda na etapa inicial. Numa das vezes, não achou o gol e na segunda, parou nas mãos de Cássio.

CORINTHIANS APROVEITA

Já diria o velho ditado da bola que quem não faz, leva e assim foi em São Januário. Após perder as melhores chances, foi o Corinthians quem aproveitou. Gustavo Mosquito foi lançado e ganhou da corrida de Luccas Claro. O zagueiro tricolor deu um carrinho dentro da área e só achou o atacante alvinegro, pênalti para o Timão. Coube ao atacante Jô bater com perfeição e abrir o placar do jogo.

DEPOIS DO GOL, FLU CRIA MAIS CHANCES

O Fluminense não se abateu por sair atrás do placar. Em desvantagem, a equipe carioca foi com tudo para cima do adversário buscando o empate. Ganso, de cabeça e Cazares, finalizando cruzado, obrigaram Cássio a fazer boas defesas para manter o zero no placar.

PREJUÍZO PRO FLU

O Fluminense não alterou sua formação para voltar a campo no intervalo, mas se viu no prejuízo logo aos quatro minutos. Abel Hernández, que havia perdido boas chances na partida, foi expulso pelo juiz Sávio Pereira Sampaio, após dividida com o volante Gabriel. A expulsão foi bastante contestada pelos jogadores do Fluminense e o atacante saiu de campo visivelmente abatido.

CÁSSIO SEGUIU COMO DESTAQUE

Mesmo com 10 em campo, o Fluminense seguia com mais ações ofensivas no jogo. O goleiro do Corinthians seguia fazendo bom trabalho debaixo das traves e parou finalizações de Bobadilla e Luccas Claro.

DE TANTO INSISTIR...

A insistência tricolor deu resultado aos 24 minutos do segundo tempo. O cruzamento de Egídio pelo lado esquerdo achou Cazares sozinho na área. O equatoriano não precisou nem pular para cabecear e empatar a partida. Bobadilla chegou a virar a partida aos 29 minutos, mas estava em posição irregular e teve o gol corretamente anulado.

CHANCES NO FIM

Já com muitas alterações em relação ao início da partida, os clubes buscaram a vitória. O Fluminense foi mais ativo e, depois do gol anulado, tentou chegar com cruzamentos e sempre parou nos cortes da defesa alvinegra. Já o Corinthians, com menos ímpeto, teve com Jô e Roni boas chances que não foram aproveitadas.

FICHA TÉCNICA

FLUMINENSE 1 X 1 CORINTHIANS

Motivo: 7ª rodada do Campeonato Brasileiro - Série A
Local: São Januário, no Rio de Janeiro (RJ)
Hora: 16h (horário de Brasília)
Árbitro: Sávio Pereira Sampaio (DF)
Auxiliares: Daniel Henrique da Silva Andrade e José Reinaldo Nascimento Júnior, ambos do DF.
VAR: Daniel Nober Bins (RS)
Cartões Amarelo: Luccas Claro, Danilo Barcelos, André (FLU); Araos (COR);
Cartão vermelho: Abel Hernández (FLU).
Gols: Jô, aos 35 minutos do primeiro tempo; Cazares, aos 24 minutos do segundo tempo.

Fluminense: Marcos Felipe; Calegari, Nino, Luccas Claro e Egídio; Yago (Bobadilla), Martinelli (André), Gabriel Teixeira (Luiz Henrique), PH Ganso (Wellington) e Cazares (Kaiky); Abel Hernández. Técnico: Roger Machado.

Corinthians: Cássio; Fágner, João Vitor, Gil e Lucas Piton; Xavier (Cantillo), Gabriel (Roni), Araos (Mateus Vital) e Vitinho; Gustavo Silva (Adson) e Jô. Técnico: Sylvinho.