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

Governo do Rio cita alta dos casos de covid e recusa receber Paulista

Estádio do Maracanã  receberia jogos do Paulista - Divulgação/@Libertadores
Estádio do Maracanã receberia jogos do Paulista Imagem: Divulgação/@Libertadores

Leo Burlá

Do UOL, no Rio de Janeiro

11/03/2021 19h12Atualizada em 11/03/2021 19h58

O governador em exercício do Rio de Janeiro, Cláudio Castro, afirmou hoje (11) que o estado não pode receber jogos do Campeonato Paulista, devido ao avanço dos casos de covid-19, segundo comunicado oficial. Depois de o governador de São Paulo, João Doria, anunciar a interrupção da competição a partir de segunda-feira (15), foi discutida a ideia de eventualmente levar seus jogos para estádios fluminenses. A hipótese agora está rechaçada.

Mais cedo, em contato com a reportagem do UOL Esporte, Rubens Lopes, opresidente da Federação de Futebol do Estado do Rio de Janeiro (Ferj), afirmou que não via empecilhos para essa transição. Disse também que Rogério Caboclo, presidente da Confederação Brasileira de Futebol (CBF), participava da articulação. O dirigente fluminense, no entanto, disse que o plano dependia do aval das autoridades locais, o que não ocorreu.

"Fui procurado pelo presidente da CBF, Rogério Caboclo, e pelo presidente da Federação Paulista, Reinaldo Bastos, sobre a possibilidade de receber no estado os jogos da Copa do Brasil e do Campeonato Paulista. Desportivamente, não vejo nenhum obstáculo", disse Lopes.

A ideia ainda era embrionária e dependia de acordo entre os clubes paulistas e a federação estadual. Nesta tarde, as partes começaram a discutir o cenário, que fica ainda mais complexo com a recusa fluminense.

Ainda que de forma preliminar, a Ferj entendia que teria sete estádios aptos a receber partidas do torneio vizinho.

O Rio de Janeiro registrou 190 mortes por covid-19 e 2.094 novos casos nas últimas 24 horas, segundo boletim divulgado pela Secretaria Estadual de Saúde. Agora, o número total de mortes, desde o início da pandemia, superou 34 mil no estado: são 34.083.

Campeonato Paulista paralisado

O governo de São Paulo anunciou hoje a restrição completa de atividades esportivas coletivas, incluindo partidas de futebol, no estado. A medida faz parte da fase emergencial do Plano São Paulo, com mais restrições no combate à pandemia da covid-19. Desta forma, o Paulistão será paralisado a partir da próxima segunda-feira (15) —a fase emergencial tem duração prevista para 30 de março.

O movimento pela interrupção do futebol paulista ganhou força na última terça-feira (9), quando foi recomendada pelo Ministério Público. Clubes chegaram a ser avisados que o governo havia decidido pela paralisação, e criou-se expectativa de um anúncio ontem. De terça para quarta, um lobby envolvendo CBF, FPF e detentores de direitos de transmissão entrou em ação.

Em uma reunião com autoridades realizada na manhã de ontem, a federação paulista voltou a falar sobre seus protocolos e defendeu a continuidade das competições. Hoje, o governo Doria anunciou a interrupção do estadual. O governador explicou que espera manter as conversas com a FPF mesmo com a pausa do Paulistão. Há uma reunião marcada para a próxima segunda, com participação também de integrantes do Ministério Público.