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

OVNIs de férias? Especialistas explicam luzes misteriosas vistas no Havaí

Luzes misteriosas que apareceram no céu de Maui, no Havaí  - Reprodução/Maui Now/Youtube
Luzes misteriosas que apareceram no céu de Maui, no Havaí Imagem: Reprodução/Maui Now/Youtube

Colaboração para Tilt, em São Paulo

27/10/2020 10h44

Moradores de diversas ilhas do Havaí, sobretudo em Big Island e Maui, relataram terem visto luzes muito peculiares se movendo no céu da noite de sábado (24). Circularam rumores de que poderiam ser OVNIs (objetos voadores não identificados), vindos diretamente do espaço. Porém, especialistas explicaram que esse não era o caso: tratava-se apenas da entrada terrestre de um foguete na atmosfera, lançado há 12 anos.

Mas, antes que a explicação viesse à tona, moradores relataram ao site local Hawaii News Now, o que eles viram a partir das luzes. Um deles disse que enxergou uma figura enorme, transparente, semelhante a uma aeronave iluminada.

Foi relatado ainda que se tratava de várias luzes, que preenchiam um espaço do tamanho de um campo de futebol. Não havia aparentemente nenhum ruído vindo das luminosidades no céu noturno.

Uma mulher chamada Molokai Kuuip Kanawaliwali, por sua vez, gravou o momento em que aquele mistério iluminou a noite no Havaí e o compartilhou no Facebook.

"Quando elas [as luzes] chegaram mais perto, comecei a enlouquecer porque pensei, "Oh, o que diabos é isso?", contou Kanawaliwali, ao jornal The Sacramento Bee.

O foguete reforçador

As luzes, entretanto, não eram motivo para pânico: não havia extraterrestres viajando até a Terra. Houve apenas a entrada na atmosfera de um antigo foguete reforçador, lançado no ano de 2008. A informação foi uma conclusão de especialistas dos observatórios Mauna Kea.

O foguete, de origem chinesa, tinha como função impulsionar um satélite de comunicação Venesat-1 até a Venezuela, segundo contou John O' Meara, cientista-chefe dos Mauna Kea, ao canal de TV, Khon2.

O especialista explica que o foguete ficou danificado e hoje não opera mais. Ainda assim, o equipamento pôde ser rastreado de modo aproximado pelos experts, que estudaram o mapa de voo do objeto, identificando-o próximo às ilhas havaianas.

Como se trata de uma estimativa, vale dizer que não há completa certeza de que foi realmente o foguete em questão que rondou o céu noturno do Havaí.

"Não temos nenhum dos pedaços de entulho", itiu Mary Beth Laychak, Diretora de Comunicações Estratégicas do Telescópio Canadá-França-Havaí. "Mas o padrão das luzes que vimos em nosso lapso de tempo combinou com este mapa [do foguete reforçador]", ressaltou.