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

Carioca - 2023

Morre torcedor ferido em briga antes de Flamengo x Vasco

Do UOL, no Rio de Janeiro (RJ)

06/03/2023 13h41Atualizada em 06/03/2023 20h30

Um dos feridos nas brigas entre organizadas de Flamengo e Vasco não resistiu aos ferimentos e morreu no Hospital Municipal Souza Aguiar, no Centro do Rio de Janeiro.

A direção do hospital informou que oito torcedores deram entrada na unidade, e três permanecem internados: dois em estado grave e um com quadro estável.

Outras três pessoas receberam alta hospitalar e uma deixou a unidade por vontade própria, de acordo com informações divulgadas pela Secretaria Municipal de Saúde.

O que aconteceu?

Centenas de integrantes de torcidas organizadas de Flamengo e Vasco se enfrentaram nas ruas do bairro de São Cristóvão, a cerca de 1 km do estádio do Maracanã, antes do jogo entre as duas equipes no domingo.

A pancadaria foi registrada em vários vídeos divulgados nas redes sociais. Alguns mostram torcedores correndo em direção aos do time rival, no começo dos confrontos. Outros, gravados minutos depois, mostram o saldo da confusão: pessoas caídas e ensanguentadas, paus e pedras jogados no chão e até celebração da violência.

A Polícia Militar informou ter apreendido, em diferentes pontos da Zona Norte da cidade do Rio de Janeiro (Maracanã, Madureira, São Cristóvão):

  • cerca de 50 pedaços de madeira;
  • nove barras de ferro;
  • cinco bombas caseiras;
  • fogos de artifício;
  • soco-inglês e
  • artefato explosivo.

Em campo, o time cruzmaltino venceu por 1 a 0 e chegou a 20 pontos, atrás de Flamengo, com 23, e Fluminense, com 22

Veja nota da Secretaria Municipal de Saúde

"A direção do Hospital Municipal Souza Aguiar informa que oito torcedores deram entrada na unidade na noite do último domingo (5). Um deles, infelizmente, não resistiu e faleceu, e três permanecem internados, sendo dois em estado grave e um com quadro estável.

Três pessoas receberam alta hospitalar e uma deixou a unidade por vontade própria".