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

Série B - 2022

Sport e Grêmio empatam sem gols na briga por vaga no G4 da Série B

Sport e Grêmio confirmaram campanhas com ataques em baixa e não balançaram as redes na Arena Pernambuco - MARLON COSTA/FUTURA PRESS/FUTURA PRESS/ESTADÃO CONTEÚDO
Sport e Grêmio confirmaram campanhas com ataques em baixa e não balançaram as redes na Arena Pernambuco Imagem: MARLON COSTA/FUTURA PRESS/FUTURA PRESS/ESTADÃO CONTEÚDO

Do UOL, em Porto Alegre

13/06/2022 21h55

Sport e Grêmio empataram, hoje (13), sem gols, o jogo que fechou a 12ª rodada da Série B do Brasileiro. A partida na Arena de Pernambuco foi um confronto direto por lugar no topo da tabela, mas teve resultado óbvio. As duas equipes aparecem entre os piores ataques da competição e, ao mesmo, possuem poucos gols sofridos. Nos acréscimos, Kannemann foi expulso pelo segundo amarelo.

No primeiro tempo, o Sport assustou com chutes de fora da área. Após o intervalo, foi o Grêmio quem chegou mais perto de balançar as redes. Mas faltou pontaria a Elias Manoel.

O resultado de 0 a 0 faz o Sport chegar a 19 pontos e o Grêmio acumula 18. O time de Recife segue em quarto lugar e a equipe de Porto Alegre continua em quinto.

Na próxima rodada o Grêmio recebe o Sampaio Corrêa, sábado (18), às 11h (horário de Brasília). No mesmo dia, o Sport joga o clássico diante do Náutico, fora de casa.

Quem foi bem: Luciano Juba

Camisa 46 encontrou bons es, apareceu à frente e esteve envolvido nos melhores momentos do Sport no jogo.

Quem decepcionou: Elias Manoel

Camisa 18 entrou na etapa final e protagonizou o lance mais incrível da partida. Em contra-ataque, o atacante ficou cara a cara com o goleiro. Livre. O chute foi em cima de Mailson em uma inacreditável finalização errada.

Bitello fora pela primeira vez

A escalação gremista teve uma grande surpresa. Roger Machado sacou Bitello da equipe, e com isso, o camisa 39 ficou fora do time pela primeira vez na Série B. Destaque na conquista do Campeonato Gaúcho, o volante chegou a ser peça-chave da equipe em 2022. Recentemente, porém, ou a ser substituído com frequência até ficar no banco agora.

Sport se encontra e pressiona

O início do jogo foi de dificuldade para o Sport, que sofreu a partir da pressão gremista ao portador da bola. Tanto que o time da casa cedeu a posse em erros de e. Mas ao longo do primeiro tempo, a equipe se encontrou e ou a pressionar. Com direito a chutes de fora da área.

Grêmio chuta. Por chutar?

Foram nove conclusões no primeiro tempo, mas a maioria de longe e sem precisão. Após um início promissor, o Grêmio ou a investir demais pelos lados e encontrou dificuldade por dentro. Seja para se defender como para criar.

Melhores chances. Mesmo resultado

O Sport cobrou escanteio com jogada ensaiada, mas Giovane chutou para fora. O Grêmio teve contra-ataque precioso com Elias, porém não conseguiu marcar. Os lances emolduram uma etapa final onde as oportunidades surgiram mais. Adiantou quase nada, pois o placar seguiu fechado.

FICHA TÉCNICA:

SPORT 0 x 0 GRÊMIO
Competição: 12ª rodada da Série B do Brasileiro
Data e hora: 13/06/2022 (segunda-feira), às 20h (horário de Brasília
Local: Arena Pernambuco, em São Lourenço da Mata (PE)
Árbitro: Wilton Pereira Sampaio
Auxiliares: Bruno Raphael Pires e Bruno Boschilia
VAR: Emerson de Almeida Ferreira
Cartões amarelos: Giovanne, Jaderson, Ezequiel (SPO); Janderson, Gabriel Teixeira, Elias Manoel, Kannemann (GRE)
Cartão vermelho: Kannemann (GRE)

SPORT: Mailson; Ezequiel, Rafael Thyere, Sabino e Sander; Fabinho, Bruno Matias (Alan), Luciano Juba, Jaderson (Ray Vanegas) e Giovanni (Thiago Lopes); Kayke (Javier Parraguez). Técnico: Gilmar Dal Pozzo

GRÊMIO: Gabriel Grando; Rodrigues, Geromel e Kannemann; Edilson (J. Varela), Thiago Santos, Villasanti (Bitello) e Nicolas; Janderson (Elias Manoel), Gabriel Teixeira (Campaz) e Elkeson (Ricardinho). Técnico: Roger Machado