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

Esse conteúdo é antigo

Homem é gravado retirando mochila de corpo de garçom morto em trem no RJ

Homem foi flagrado pegando mochila de Jairo pouco após ele ser assassinado dentro de trem da SuperVia - Redes Sociais/Reprodução de vídeo
Homem foi flagrado pegando mochila de Jairo pouco após ele ser assassinado dentro de trem da SuperVia Imagem: Redes Sociais/Reprodução de vídeo

Do UOL, em São Paulo

28/06/2022 18h50Atualizada em 28/06/2022 19h22

Um homem foi gravado retirando a mochila do garçom Jairo Jonathan do Carmo Pedrosa Tudes, 24, morto na tarde de ontem dentro de um trem da SuperVia, no Rio de Janeiro, pouco tempo após o jovem ser executado. A polícia abriu investigação para identificar o jovem que aparece nas imagens.

Em vídeo divulgado nas redes sociais, é possível ver o corpo do garçom no banco do trem e o suspeito, em um movimento rápido, puxando a mochila dele, que estava no chão do vagão, entre as pernas de Jairo.

Ele não esconde o rosto e não parece se incomodar com a presença de outras pessoas na cena do crime, indo embora em seguida.

Do lado de fora da delegacia, na tarde de ontem, familiares de Jairo comentaram sobre o crime. "Ele era trabalhador, levaram tudo, celular, bolsa, tudo", disse a namorada dele, Esther Silva, em conversa com jornalistas.

O UOL entrou em contato com a Polícia Civil do Rio de Janeiro em busca de informações sobre se uma investigação envolvendo o furto da mochila de Jairo foi aberta, mas não recebeu resposta até o momento.

Relembre o caso

O garçom Jairo Jonathan do Carmo Pedrosa Tudes, 24, foi assassinado dentro de um vagão da SuperVia quando voltava do trabalho na tarde de ontem.

Segundo uma testemunha, o suspeito estava sentado atrás de Jairo no vagão usando máscara e um boné. Ele disparou contra a vítima à queima-roupa no momento em que o sinal sonoro do trem sinalizou a chegada na estação Magalhães Bastos. Antes de cometer o crime, o suspeito cobriu as câmeras do vagão com fita. Ele fugiu do local em meio à correria e não foi preso até o momento.

O caso é investigado pela Delegacia de Homicídios do Rio de Janeiro. Em conversa com jornalistas, a família de Jairo afirmou que ele sofreu ameaças de morte após se relacionar com uma colega de trabalho que era casada. Por causa desse relacionamento, ele também teria sido demitido do emprego anterior.