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

Astronauta faz imagem do espaço da erupção do vulcão nas Ilhas Canárias

Do UOL, em São Paulo

23/09/2021 07h55

Um astronauta francês conseguiu registrar a erupção do vulcão de Cumbre Vieja, nas Ilhas Canárias, na Espanha, do espaço. Thomas Pesquet está em missão pela agência europeia na ISS (Estação Espacial Internacional) e compartilhou a fotografia ontem, em seu perfil no Twitter.

"O vulcão de La Palma em erupção. O resplendor alaranjado da lava contrasta com a escuridão do Oceano Atlântico e deixa tudo mais impressionante. O brilho da lava parece perto demais das luzes da cidade", escreveu o astronauta.

Quase 200 casas foram destruídas pela lava, mais de 6 mil pessoas tiveram de deixar a cidade e um rio de magma continua seu caminho até o mar: essas são as imagens deixadas pelo vulcão Cumbre Vieja após a erupção na ilha de La Palma, na Espanha, no último domingo.

A lava está devastando tudo em seu caminho para a costa da ilha no arquipélago espanhol das Ilhas Canárias, embora a um ritmo mais lento do que o esperado, em torno de 120 metros por hora. Desde a erupção do vulcão a lava já varreu 180 casas, de acordo com o sistema europeu de monitoramento de emergência baseado no espaço Copérnico. Porém, o número certamente aumentará.

No caminho para o mar, os fluxos de lava já chegaram ao último obstáculo, no que diz respeito ao centro urbano: Todoque, uma cidade de cerca de 1,2 mil habitantes no município de Los Llanos, no sudoeste de La Palma, que forçou a saída de seus habitantes.

Especialistas e funcionários públicos concordam que o magma chegará ao mar, mas não sabem quando isso vai ocorrer. Por isso foram tomadas precauções, pois é previsível que quando a lava entrar em contato com água salgada a uma temperatura de 1 mil graus Celsius, liberará gases tóxicos e provocará explosões.

Esse momento será crítico, como advertiu hoje o presidente do governo regional das Ilhas Canárias, Ángel Víctor Torres. Por essa razão, todas as istrações - a espanhola, a canária e a ilha de La Palma - estão pedindo à população para não se dirigir às estradas próximas ao vulcão, nem se aproximar dos fluxos de lava.

O presidente do governo espanhol, Pedro Sánchez pediu cautela e anunciou que La Palma será declarada como uma zona de emergência. Além disso, as Ilhas Canárias poderão solicitar ajuda dos Fundos de Solidariedade da União Europeia para aliviar os danos causados pela erupção do vulcão, que vale mais de 400 milhões de euros.