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

Com dois de Marcos Leonardo, Santos vence Fortaleza e chega aos 45 pontos

Luciano Ribeiro

Colaboração para o UOL, em Santos

25/11/2021 20h59Atualizada em 25/11/2021 21h54

Marcos Leonardo entrou no lugar do veterano Diego Tardelli no intervalo e foi decisivo para a vitória do Santos sobre o Fortaleza, por 2 a 0, pelo Brasileirão, na Vila Belmiro. O atacante anotou ambos os gols do triunfo que deixa a equipe paulista em posição mais confortável para manter sua condição de quem nunca foi rebaixado à Série B.

O Santos agora sobe para a 11ª colocação, com 45 pontos, quantia que é tratada como "garantia" para manter um time na elite nacional. São agora oito pontos de distância para a zona de rebaixamento —embora o Bahia, 17º, tenha dois jogos a menos.

Esta foi a terceira derrota do Fortaleza nas últimas quatro partidas. O time vem perdendo rendimento, mas ainda está na zona de classificação para a Copa Libertadores, em quinto.

Na próxima rodada, o Peixe tem uma parada duríssima pela frente. Vai enfrentar o Internacional, domingo, às 19h, no Beira-Rio. Já o Fortaleza, vai encarar o Juventude no Castelão no dia 3 de dezembro (sexta-feira da semana que vem).

Live do Santos

Foi bem: Marcos Leonardo, o iluminado

O Menino da Vila não é uma unanimidade dentro do Santos, mas se esforçou muito durante todo o segundo tempo e foi premiado.
Com mais sorte do que juízo no primeiro gol, porque bateu muito mal o pênalti que converteu --após a bola bater no braço de Ronald - fez 1 a 0 aos 25 do segundo tempo. E depois fechou o placar no fim comum golaço, aos 44.

Foi mal: Diego Tardelli, pouco participativo

Diego Tardelli até deu mostras de que hoje seria diferente ao finalizar uma bola ao gol logo aos 43 segundo de jogo. Mas, depois disso, sumiu. Foi marcado facilmente e substituído no intervalo por Marcos Leonardo, o autor do gol santista.

João Paulo, a muralha

O goleiro João Paulo foi mais uma vez um destaque do Santos. No momento em que o time cometeu falhas defensivas, foi ele quem apareceu para salvar, especialmente no primeiro tempo, quando evitou gols de Robson, David e Pikachu.

O jogo do Santos: muita transpiração

Foi uma noite muito emocionante para a torcida do Santos porque o time oscilou durante os 90 e poucos minutos, mas não faltou dedicação. Começou muito bem, empurrando o Fortaleza para seu campo de defesa com uma formação bem ousada para os padrões de Fábio Carille. O time chegou a ter 70% de posse de bola nos primeiros minutos, mas como aconteceu em outros jogos, falhou na finalização.

Na segunda etapa, o jogo estava equilibrado, mas com o gol de pênalti, tudo ficou mais simples e o Santos se defendeu bem antes de conseguir ampliar.

O jogo do Fortaleza: pouca eficiência

O Fortaleza chegou à Vila Belmiro preparado para ar aquela pressão inicial e se fechou de maneira muito inteligente, dificultando as finalizações alvinegras. A partir da metade do primeiro tempo, no entanto, foi se soltando, subindo sua marcação e fez o goleiro João Paulo trabalhar demais.

Só que na segunda etapa, não conseguiu repetir a dose, cedeu campo ao Peixe e acabou sofrendo dois gols.

FICHA TÉCNICA
SANTOS 2 X 0 FORTALEZA

Data: 25/11/2021 (quinta-feira)
Local: Vila Belmiro, em Santos (SP)
Árbitro: Wagner do Nascimento (RJ)
Auxiliares: Michael Corrêia (RJ) e Luiz Claudio Regazone (RJ)
VAR: Carlos Eduardo Nunes (RJ)
Renda: R$ 223.880,00
Público: 11.313
Cartões amarelos: Vinícius Zanocelo, Marcos Guiilherme e Marcos Leonardo (SAN); Yago Pikachu e Marcelo Benevenuto (FOR)
Cartões vermelhos:
Gols: Marcos Leonardo, aos 25 e aos 44 minutos do segundo tempo

SANTOS
João Paulo; Kaiky, Luiz Felipe e Danilo Boza; Marcos Guilherme, Vinicius Zanocelo (Camacho), Felipe Jonatan (Sandry) e Lucas Braga; Marinho (Gabriel Pirani), Diego Tardelli (Marcos Leonardo) e Ângelo.
Técnico: Fábio Carille

FORTALEZA
Marcelo Boeck; Tinga, Marcelo Benevenuto e Titi; Yago Pikachu (Lucas Crispim), Éderson, Ronald (Edinho), Matheus Vargas (Lucas Lima) e Bruno Melo; David (Romarinho) e Robson (Wellington Paulista).
Técnico: Juan Pablo Vojvoda

' data-autoplay='true' data-start='' data-mute='true' data-related='false' data-btnfollow='false' frameborder='0' allow='autoplay; encrypted-media' allowfullscreen>