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

Libertadores - 2022

Árbitro recorda 'gol da água' do Atlético-MG em Ceni: 'Acho que treinaram'

Rogério Ceni e Ronaldo Gaúcho durante partida da Libertadores de 2013 - Reprodução/SporTV
Rogério Ceni e Ronaldo Gaúcho durante partida da Libertadores de 2013 Imagem: Reprodução/SporTV

Do UOL, em São Paulo

26/04/2022 18h22

O árbitro Marcelo de Lima Henrique, responsável por apitar a partida entre Atlético-MG e São Paulo, pela primeira fase da Libertadores de 2013, relembrou o lance que ficou conhecido como o "gol da água". Em entrevista ao canal Charla Podcast, o árbitro explicou que o lance, embora tenha gerado polêmica, foi totalmente legal. Henrique ainda suspeita que a equipe mineira tenha ensaiado o lance.

Ainda aos 13 minutos do primeiro tempo, Ronaldinho Gaúcho, do Atlético-MG, aproveitou a paralisação para atendimento médico e pediu um gole de água a Rogério Ceni. Depois de matar a sede, continuou na área são-paulina. Quando o árbitro autorizou a cobrança de lateral, Marcos Marcos Rocha esticou a bola até a área, encontrando Ronaldinho Gaúcho sem marcação. O Bruxo cruzou para Jô, que só teve o trabalho de empurrar para a rede.

"[O gol] Foi legal porque ele [Ronaldinho] não saiu de campo, bebeu água que estava na mão do Ceni. Ele devolveu. E lateral não tem impedimento, ele estava no campo de jogo. Se ele tivesse saído do campo e voltado, seria tiro livre indireto contra ele, por entrar sem autorização, e cartão amarelo", explicou o árbitro.

"Foi um lateral. E alguém pediu atendimento ou teve uma maca. O Ronaldo foi lá [pegar água]. Eu não vi ele lá, vi depois na TV. Quando teve o atendimento, vi que estava tudo ok e mandei jogar. Dei o 'piii'. Marcos Rocha estica o lateral lá na frente. Quando olho, o Ronaldo sozinho. Fazer o quê? Não podia fazer nada. E foi gol. [Pergunto para] o assistente: 'Esse cara estava dentro de campo?'. 'Ele estava dentro de campo, Marcelo'. Ainda bem que eu não vi ele bebendo água, porque na minha mente poderia ter criado uma situação irregular e tirar um gol que foi legal. Imagino o Ceni depois... Deve ter ficado chateado. Mas não rolou reclamação, zero estresse. Foi dentro da regra. Acho que eles treinaram isso, não é possível", comenta Marcelo de Lima Henrique sobre a possível jogada ensaiada do Atlético-MG, que venceu aquela partida por 2 a 1 e conquistou a Libertadores naquele ano.