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

Flu e Santos criam pouco e empatam sem gols em abertura do Brasileirão

Eder Traskini e Eduardo Nunes

Do UOL e Colaboração para o UOL, em Santos (SP)

09/04/2022 18h26

Fluminense e Santos empataram por 0 a 0 na tarde deste sábado, no Maracanã, em duelo válido pela primeira rodada do Brasileirão 2022.

A partida foi de poucas chances de gol para os dois lados. O Flu errou bastante na saída de bola ao tentar criar jogadas, mas o Peixe não conseguiu aproveitar as situações. Na melhor chance carioca, Fred acertou a trave já na segunda etapa.

O Fluminense volta a campo nesta quarta-feira, quando visita o Junior Barranquilla (COL), na Colômbia, pela Copa Sul-Americana. O Santos, por sua vez, também entra em campo pelo torneio continental: recebe a Universidad Católica (EQU), também na quarta-feira, às 19h15.

O melhor: Cano

O centroavante do Tricolor incomodou demais a defesa santista durante toda a partida. Cano conseguiu se desmarcar e, quando recebia a bola, não demorava para chutar ao gol. Foi responsável por mais de metade das finalizações do Fluminense

O pior: Yago Felipe

Sem ajudar muito na marcação e pecando demais na saída de bola, entregando três bolas para o Peixe, Yago Felipe teve uma atuação muito abaixo no Maracanã. Saiu no intervalo para a entrada de Nonato

Cronologia do jogo

O jogo foi de poucas emoções. O Fluminense teve o domínio das ações e mais posse de bola, mas foi pouco efetivo na criação de jogadas. Como resultado, o goleiro João Paulo fez algumas defesas simples em chutes de longe, mas foi só.

A melhor chance do jogo veio aos 39 da segunda etapa. Luiz Henrique achou Fred nas costas de Bauermann, ele avançou e bateu forte, rasteiro, para explodir a trave do goleiro João Paulo.

Atuação do Santos: Reativo e pouco efetivo

O técnico Fabián Bustos abriu mão dos três zagueiros, mas o esquema não deixou de ser reativo. O Peixe ou a maior parte do jogo se defendendo e esperando o erro do Fluminense para atacar. Os cariocas, de fato, cometeram diversos erros sobretudo na saída de bola, mas o Peixe não foi efetivo na criação de oportunidades.

Maicon apaga estreia ruim

Se o Peixe teve algum destaque, esse foi o zagueiro Maicon. O defensor santista tinha feito um jogo questionável na estreia pela Copa Sul-Americana, mas não teve culpa no gol sofrido pelo Santos quando cortou o ataque do Banfield (ARG). Ainda assim, não havia ado ainda a segurança que ou hoje diante do Flu. Bem por baixo e pelo alto, foi um dos principais responsáveis por manter o zero no placar.

O jogo do Fluminense: Bola no Cano

Diante da postura fechada do Santos, o Fluminense teve dificuldades para furar a marcação adversária, mesmo controlando a posse de bola e sendo pouco ameaçada na defesa. Uma saída foi investir na bola aérea, onde a equipe das Laranjeiras conseguiu levar vantagem sobre a defesa santista. Cris Silva, na ala esquerda, foi o responsável por conseguir avançar mais no campo, enquanto Cano, centralizado, concentrou as finalizações.

FICHA TÉCNICA:

FLUMINENSE 0 x 0 SANTOS

Competição: Campeonato Brasileiro, 1ª rodada
Local: Maracanã, no Rio de Janeiro
Dia: 9 de março de 2022, sábado
Horário: 16h30 (horário de Brasília)
Árbitro: Anderson Daronco (Fifa/RS)
Assistentes: Rafael da Silva Alves (Fifa/RS) e Michael Stanislau (RS)
VAR: Daniel Nobre Bins (RS)
Amarelos: Manoel, do Fluminense;

FLUMINENSE: Fábio; Nino, Manoel e David Braz (Luccas Claro); Calegari (Willian), André, Yago Felipe (Nonato), Nathan (Luiz Henrique) e Cris Silva; Arias e Cano (Fred). Técnico: Abel Braga

SANTOS: João Paulo; Madson (Velázquez), Maicon, Eduardo Bauermann e Lucas Pires; Willian Maranhão, Rodrigo Fernández e Zanocelo (Sandry); Ricardo Goulart (Pirani), Jhojan Julio (Bryan Angulo) e Marcos Leonardo (Lucas Barbosa). Técnico: Fabián Bustos