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

Internacional

Antes criticada, preparação física dá as caras em retomada do Inter

Diego Aguirre e Fernando Piñatares (atrás) durante treinamento do Inter - Ricardo Duarte/Inter
Diego Aguirre e Fernando Piñatares (atrás) durante treinamento do Inter Imagem: Ricardo Duarte/Inter

Marinho Saldanha

Do UOL, em Porto Alegre

21/08/2021 04h00

Antigo alvo de críticas, a preparação física do Inter deu as caras na recuperação do time no Campeonato Brasileiro. Questionada desde o início do ano, a intensidade e a capacidade de ar os jogos também fazem parte da equação que deu um novo horizonte ao Colorado.

Ver o Inter em campo no princípio da temporada era perceber que o time se movia em uma velocidade inferior no gramado. Muitos toques curtos, deslocamentos raros e, ainda que criasse chances, havia uma aparente falta de "poder de disputa" a cada jogo.

Tanto que, já nos dias finais de Miguel Ángel Ramírez como treinador do time, o então vice de futebol João Patrício Herrmann concedeu entrevista coletiva cobrando publicamente o "resgate do estilo gaúcho", indicando o que faltava em campo.

A justificativa no momento poderia ser o modelo de jogo adotado, mas sobraram críticas para preparação física.

Quando Diego Aguirre foi anunciado, também houve interrogações. Em 2015, quando comandou o time pela primeira vez, o "excesso de intensidade" no início dos jogos e perda de tal característica do meio para o fim dos jogos gerou reclamações.

Mas o que houve até agora não aponta qualquer indício disso. O trabalho comandado por Fernando Piñatares, com a parceria de Paulo Paixão, começa a dar resultado, aos poucos, nos jogos.

Contra o Fluminense, por exemplo, o Inter sofreu o gol de empate nos minutos finais de jogo. Já nos acréscimos pulou na frente e ainda conseguiu mais um gol no fim da partida. Diante do Flamengo, na vitória anterior, se desgastou ao defender cada palmo de campo de um dos setores ofensivos mais fortes do país.

Ainda sem retomar totalmente o caminho das vitórias, jogos anteriores já mostravam a equipe correndo "até o fim". Duelos contra Olimpia, pela Libertadores, ou Athletico Paranaense e até o Gre-Nal, ambos no Brasileiro, foram evidências de um comportamento diferente.

Novamente, o modelo de jogo faz parte da equação. Com Aguirre, o time parte em contra-ataques, utilizando uma defesa ajustada e a velocidade como arma. Com menos posse de bola, mas intensidade maior na frente, a equipe até se desgasta mais e precisa de uma resposta física adequada do grupo.

Outro fator que também pesa a favor da preparação física é a redução de baixas. Quando a atual comissão técnica assumiu o Inter, conviveu com a rotina de oito, nove ausências por jogo. Com um trabalho forte focado na recuperação dos atletas, paulatinamente o número foi caindo. Hoje em dia são três ausências: Lucas Ramos, Saravia e Mauricio.

O próximo compromisso do Colorado será no domingo, contra o Santos, na Vila Belmiro.

Internacional