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

Grêmio sofre, mas vence com gol de Luciano para decidir returno com Inter

Diego Souza e Everton comemoram gol do Grêmio contra o Novo Hamburgo - EVERTON SILVEIRA/ISHOOT/ESTADÃO CONTEÚDO
Diego Souza e Everton comemoram gol do Grêmio contra o Novo Hamburgo Imagem: EVERTON SILVEIRA/ISHOOT/ESTADÃO CONTEÚDO

Do UOL, em São Paulo

02/08/2020 20h55

Em jogo animado, o Grêmio teve bastante trabalho, mas venceu o Novo Hamburgo no fim, pelo placar de 4 a 3, e garantiu vaga na final do returno do Gauchão contra o Internacional. Os gols gremistas foram marcados por Maicon, Luciano e Diego Souza, que fez dois. Pelo lado do Novo Hamburgo, o destaque foi Zé Mario, que marcou duas vezes. Kayron fez o terceiro dos visitantes.

Agora, o Grêmio tem pela frente o Internacional na final do segundo turno do Campeonato Gaúcho. O Gre-Nal será realizado na próxima quarta-feira (5), e o vencedor vai disputar a final do Campeonato Gaúcho contra o Caxias, campeão do primeiro turno. Por ter melhor campanha, o Tricolor joga em casa.

O melhor: Diego Souza

Demonstrando estar cada vez mais adaptado à função de camisa 9, Diego Souza brilhou. Além de marcar duas vezes e ter um gol mal anulado, o jogador incomodou muito os zagueiros adversários enquanto esteve em campo. Venceu duelos aéreos, incomodou a saída de bola do Novo Hamburgo e apareceu muito bem para construir jogadas com os companheiros que vinham de trás.

O pior: Matheus Henrique

Um dos destaques do meio-campo gremista, Matheus Henrique não foi bem no jogo de hoje. Foi dele o erro que culminou no primeiro gol do Novo Hamburgo, quando escorregou e entregou a bola nos pés a equipe adversária. Matheus errou es na saída de bola que davam espaço para o time adversário atacar, criando chances de perigo contra o Tricolor.

Gol-relâmpago coloca Grêmio na frente no início

Logo no primeiro minuto de jogo, o Tricolor gaúcho abriu o placar. Orejuela avançou pela direita e encontrou bem Everton no lado oposto do ataque. O atacante, que não tem feito tantos gols nas últimas partidas, encontrou muito bem Diego Souza na área. O centroavante gremista testou firme para dentro do gol, colocando a equipe da casa em vantagem muito rápido.

Lado direito gremista fica forte com Orejuela

Um dos destaques do Grêmio na noite foi o lateral direito Orejuela, que começou entre os titulares no lugar de Victor Ferraz. Muito participativo, ele virou uma opção importante pelo lado do campo. Abrindo espaços, dando opção de e e aparecendo para triangular muito bem, o atleta colombiano mostrou que está forte na briga pela titularidade e que pode acrescentar muito na ofensividade da equipe de Renato Portaluppi.

O Novo Hamburgo reage e consegue chegar ao empate

A partida parecia morna e encaminhada para a vitória do Grêmio, que abriu dois gols de vantagem logo cedo na partida. No entanto, um falta bem cobrada pelo lateral Zé Mario recolocou os visitantes na partida. Depois, um erro na saída de bola de Matheus Henrique, que acabou escorregando e dando o ataque de graça para o adversário, o Novo Hamburgo empatou com Kayron, dando mais emoção à partida ainda na primeira etapa.

Diego Souza brilha dentro da área mas o Novo Hamburgo se mantém vivo

Na segunda etapa, o jogo perdeu um pouco de intensidade, mas os gols continuaram saindo. E foi a vez de Diego Souza aparecer. Primeiro, logo aos 2 minutos, o lateral Guilherme Guedes fez um excelente cruzamento para o atacante dentro da área. Ele, que venceu quase todas as bolas ofensivas pelo alto, cabeceou para o gol. No entanto, o árbitro Daniel Nobre Bins marcou falta do atacante gremista. Dez minutos depois, novamente apareceu a dobradinha do lateral esquerdo gremista com o camisa 9, dessa vez pelo chão. Guedes encontrou Diego, que finalizou com calma, colocando o Tricolor a frente novamente.

Apesar da desvantagem, a equipe visitante não se abateu e seguiu brigando pela vaga na final. Todo o esforço foi compensando quando, aos 35 minutos da segunda etapa, Jean Pyerre cometeu pênalti após cobrança de escanteio. Na batida, o lateral Zé Mario, que já havia feito um gol de falta, bateu firme e empatou a partida mais uma vez.

Defesa do Novo Hamburgo falha e Luciano decide

O Novo Hamburgo, que se manteve competitivo por toda a partida, levou o quarto e decisivo gol após uma bobeira de seus zagueiros. A bola sobrou na entrada da área e Chicão e Kesley se confundiram. Luciano, que estava ligado no lance, percebeu a chance e não perdoou.

Ficha técnica
Grêmio 4 x 3 Novo Hamburgo

Competição: Campeonato Gaúcho (semifinal do returno)
Data: 02 de agosto de 2020 (domingo)
Horário: às 19h (de Brasília)
Árbitro: Daniel Nobre Bins
Assistentes: Tiago Augusto Kappes Diel e Maíra Mastella Moreira
Cartão amarelo: Guilherme Guedes, Maicon (Grêmio); Kesley, Zé Mario (Novo Hamburgo)
Gols: Diego Souza- 1'/1ºT (1-0); Maicon - 22'/1ºT (2-0); Zé Mario - 31'/1ºT (2-1); Kayron - 37'/1ºT (2-2); Diego Souza- 12'/2ºT (3-2); Zé Mario - 35'/2ºT (3-3); Luciano - 45'/2T (4-3)
Grêmio
Vanderlei, Orejuela, Geromel, Kannemann, Guilherme Guedes, Matheus Henrique, Maicon (Lucas Silva), Alisson (Pepe), Jean Pyerre (Luciano), Everton e Diego Souza (Isaque)
Técnico: Renato Portaluppi
Novo Hamburgo
Jacsson, Kesley, Moisés (Dionathan), Diego Ivo, Zé Mario, Chicão, Matheus Bertotto, Mossoró (Guto), Matheus Lagoa, Juba e Kayron
Técnico: Marcio Nunes