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

La Liga - 2021/2022

Vinicius Junior marca, e Real Madrid bate a Real Sociedad pelo Espanhol

Vinicius Junior marca para o Real Madrid contra a Real Sociedad pelo Campeonato Espanhol - Ander Gillenea/AFP
Vinicius Junior marca para o Real Madrid contra a Real Sociedad pelo Campeonato Espanhol Imagem: Ander Gillenea/AFP

Colaboração para o UOL, de São Paulo

04/12/2021 18h53

Apesar do susto com a lesão de Benzema e o bom primeiro tempo do adversário, o Real Madrid venceu a Real Sociedad por 2 a 0 em partida válida pela 16ª rodada do Campeonato Espanhol. Os gols foram marcados na etapa complementar por Vinicius Júnior e Jovic.

Com a vitória, o Real Madrid amplia a vantagem na liderança da Liga. Agora são 39 pontos para o time merengue contra 31 do Sevilla. O Real Sociedad é o quinto colocado com 29 pontos.

Próximo compromisso do Real Madrid é na terça-feira (7) contra a Inter de Milão, pela última rodada da fase de grupos da Champions League.

Deixa com o Vini

Na ausência de Benzema, coube a Vinicius Jr o trabalho de construir a vitória madridista. Com o gol de hoje, ele assumiu a vice-artilharia do Campeonato Espanhol, com 10 no total. Está atrás apenas do próprio Benzema, que soma 12 gols na Liga.

Muita birra e pouca bola

Adnan Januzaj, meia belga do Real Sociedad, aparentava estar muito pilhado na partida de hoje. No fim do primeiro tempo, ele discutiu com Vinicius Júnior. No segundo, ele levou cartão amarelo por simulação e reclamação. Depois disso, a paciência do técnico Imanol Alguacil acabou e Januzaj foi para o banco.

Apenas 16 minutos de Benzema

Referência do ataque merengue, Benzema sentiu dores no joelho e pediu para ser substituído antes da metade do primeiro tempo. Sua melhor jogada até então havia sido uma troca de es com Vinicius Jr que resultou numa finalização fraca do brasileiro. O sérvio Jovic entrou no lugar do francês na partida.

Real Sociedad deu trabalho no primeiro tempo

Jogando em casa, o Real Sociedad teve amplo domínio do primeiro tempo da partida, ainda que não conseguisse converter isso em chances de gol. Após a saída de Benzema, o Real Madrid teve uma única oportunidade de tirar o zero do placar, com Rodrygo chutando para Remiro espalmar.

Eder paredão

Se o Courtois não teve trabalho com o ataque do Real Sociedad, muito se deve à ótima atuação de Eder Militão no setor defensivo. Foram nove bolas recuperadas e quase uma assistência, quando fez um belo lançamento para o Vini Jr, mas que foi defendido por Remiro.

Cronologia do jogo

Com apenas um minuto do segundo tempo, Vinicius Júnior a pelos marcadores do Sociedad, toca para Jovic, e ao receber de volta chuta de primeira para abrir o placar. Pouco depois, aos 11, foi a vez do Sérvio deixar o dele de cabeça.

FICHA TÉCNICA
Real Sociedad 0 x 2 Real Madrid

Competição: Campeonato Espanhol 21/22 (16ª rodada)
Data: 4 de dezembro de 2021, sábado
Hora: 17h, de Brasília
Local: Estádio Anoeta, em Gipuzkoa (ESP)

Gols: Vinicius Júnior (Real Madrid) aos 1' do 2ºT e Jovic (Real Madrid) aos 11' do 2ºT
Cartões amarelos: Zubeldia e Januzaj (Real Sociedad)

Real Sociedad: Remiro; Gorosabel (Zaldua), Zubeldia, Le Normand e Rico (Muñoz); Zubimendi, Guevara (Turrientes), Januzaj (Portu) e Oyarzabal; Isak e Sorioth (Barrenetxea). Técnico: Imanol Alguacil

Real Madrid: Courtois; Carvajal, Eder Militão, Alaba e Mendy; Casemiro (Camavinga), Kroos (Valverde) e Modric; Rodrygo (Asensio), Benzema (Jovic) e Vinicius Jr. Técnico: Carlo Ancelotti