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

Guerra da Rússia-Ucrânia

Notícias do conflito entre Rússia e Ucrânia


Rússia ataca Ucrânia por terra, mar e ar; casas e hospitais são atingidos

Do UOL, em São Paulo

24/02/2022 14h52

Os ataques iniciados hoje (24) pela Rússia contra Ucrânia atingiram, além de alvos militares, prédios civis como hospitais, aeroportos e prédios residenciais. As invasões russas acontecem por terra, mar e ar e em diferentes áreas do país, relatam veículos de imprensa internacionais e o governo ucraniano.

Autoridades da Ucrânia informaram que os ataques já somam mais de 60 vítimas, entre civis e militares. As explosões começaram após o presidente russo, Vladimir Putin, dar sinal verde para o que chamou de "operação militar especial" contra a Ucrânia.

"Nossa análise concluiu que nosso confronto com essas forças [ucranianas] é inevitável", disse Putin. "Algumas palavras para aqueles que seriam tentados a intervir: a Rússia responderá imediatamente e você terá consequências que nunca teve antes em sua história", afirmou o presidente russo, durante pronunciamento nacional.

Um porta-voz do Ministério de Assuntos Internos da Ucrânia informou que o país havia registrado 392 casos de bombardeiros por forças russas, segundo a CNN Internacional.

Ainda no início desta quinta-feira, os russos invadiram a Ucrânia enviando mísseis; soldados transportados por helicópteros, que transportavam metralhadoras; unidades navais que chegaram pelo Mar Negro; e veículos militares cruzando a Crimeia, região tomada pela Rússia em 2014.

Mapa Ucrania - Arte/ UOL - Arte/ UOL
Imagem: Arte/ UOL

Segundo guardas de fronteira ucranianos, as forças russas teriam entrado no início dessa quinta-feira na região do norte de Kiev —a capital do país— a partir de Belarus, para executar um ataque com mísseis contra alvos militares.

Em Chuhuiv, no entanto, imagens gravadas e fotografadas mostram civis feridos e casas destruídas após a operação. Foi nesta cidade, a cerca de 530 km de Kiev, que um complexo de apartamentos foi atingido pelos militares russos. Fotos do local mostram uma senhora com a cabeça enfaixada e muito sangue. A Rússia havia prometido que não iria atacar civis.

24.fev.2022 - Uma mulher ferida é vista após ataque aéreo danificar um complexo de apartamentos em Kharkiv, na Ucrânia - Wolfgang Schwan/Anadolu Agency via Getty Images - Wolfgang Schwan/Anadolu Agency via Getty Images
24.fev.2022 - Uma mulher ferida é vista após ataque aéreo danificar um complexo de apartamentos em Kharkiv, na Ucrânia
Imagem: Wolfgang Schwan/Anadolu Agency via Getty Images

Em Vuhledar, no leste da Ucrânia, um hospital foi atingido por um projétil russo, deixando quatro mortos e dez pessoas feridas, segundo o comando militar da Ucrânia. Entre os feridos, há seis médicos. Outras unidades de saúde teriam sido alvejadas.

Imagens divulgadas nas redes sociais e por veículos internacionais mostram helicópteros russos atacando também o aeroporto de Hostomel —que recebe e envia cargas. Pelo menos seis helicópteros russos foram vistos voando para o oeste sobre o rio Dnieper em direção a cidade de mesmo nome.

Já a Rússia informou ter destruído 74 instalações militares na Ucrânia, incluindo 11 aeródromos. O porta-voz do ministério da Defesa russo, o general Igor Konashenkov, disse também que o ministro da Defesa, Serguei Shoigu, ordenou que o Exército russo "trate com respeito" os soldados ucranianos.

No fim da manhã de hoje —horário de Brasília—, o presidente da Ucrânia, Volodymyr Zelensky, publicou em suas redes sociais que forças militares russas tentavam ocupar Chernobyl, onde ocorreu o pior acidente nuclear da história. "Nossos defensores estão dando suas vidas para que a tragédia de 1986 não se repita", escreveu em suas redes sociais.

Segundo informações do New York Times, ucranianos aguardavam hoje, em um centro em Kramatorsk, leste da Ucrânia, para entregar seus documentos para se voluntariam às forças armadas do país. Mais cedo, o presidente ucraniano afirmou que o banco estatal e o sistema financeiro do país possuem "recursos suficientes" para garantir a defesa do país e "os interesses dos cidadãos ucranianos".

Resposta dos EUA e Otan

Ontem, após a declaração de Putin, o presidente dos Estados Unidos, Joe Biden, disse que a Rússia escolheu uma "guerra premeditada" e "que trará uma perda catastrófica".

Na tarde de hoje, em seu primeiro pronunciamento após a invasão da Rússia na Ucrânia, Biden chamou Putin de "agressor". "Ele [Putin] escolheu a guerra e agora seu país vai pagar as consequências. Será muito caro economicamente, estrategicamente e se tornará um pária internacional", disse o presidente dos EUA.

Biden também anunciou cinco novas sanções à Rússia, que foram acordadas com o G7. Entre as medidas estão limitar a capacidade da Rússia de fazer negócios em dólares, libras, euros e ienes, além de bloquear metade das importações de alta tecnologia.

O secretário-geral da Otan (Organização do Tratado do Atlântico), Jens Stoltenberg, afirmou em entrevista coletiva hoje que o bloco não vai enviar tropas à Ucrânia após o ataque da Rússia.

De acordo com ele, militares serão enviados apenas à região leste dos territórios da Otan — formada por Polônia, Eslováquia, Hungria e Romênia, mas a Rússia vai pagar um "alto preço político e econômico".