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

Menino inglês de 6 anos acha fóssil paleozoico ao cavar no quintal de casa

Fragmentos do coral de chifre encontrado pela criança - Reprodução
Fragmentos do coral de chifre encontrado pela criança Imagem: Reprodução

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

30/03/2021 09h31

Um menino de seis anos se diz "realmente empolgado" após ter encontrado um fóssil, datado de milhões de anos atrás, enquanto cavava no jardim da casa dele, na região inglesa de West Midlands.

Siddak Singh Jhamat, mais conhecido como Sid, estava usando um conjunto de caça de fósseis que recebeu como presente de Natal, quando se deparou com uma pedra que parecia um chifre.

"Eu estava procurando minhocas e coisas como cerâmica e tijolos e acabei encontrando uma rocha que parecia um pouco com um chifre e pensei que poderia ser um dente, uma garra ou um chifre, mas na verdade era um pedaço de coral que é chamado de coral de chifre", disse o estudante.

De acordo com uma reportagem da BBC Internacional, o pai de Sid, Vish Singh, foi capaz de identificar o coral de chifre em um grupo de fósseis do qual ele é membro no Facebook. Ele explicou que recebeu a informação que o achado do filho teria entre 251 a 488 milhões de anos — parte da era Paleozoica.

"Na época, a Inglaterra fazia parte da Pangeia, uma massa de terra de continentes. A Inglaterra também estava toda submersa... é uma extensão de tempo bastante significativa", disse Vish Singh.

Além do coral de chifre, Sid encontrou um bloco de areia coagulado. Nele, havia pequenos moluscos, conchas do mar e um crinoide.

A família, de Walsall, disse não morar em uma área conhecida por seus fósseis, como a Costa Jurássica, ao sul da Inglaterra, mas ressalta que há muita argila natural no jardim onde o fóssil foi encontrado.

"Muitas e muitas pessoas comentaram como é incrível encontrar algo no jardim do quintal. Dizem que você pode encontrar fósseis em qualquer lugar se olhar com bastante cuidado, mas encontrar um pedaço significativamente grande como esse é algo único", acrescentou Singh.

A família agora aguarda o contato do Museu de Geologia da Universidade de Birmingham para contar mais sobre a descoberta, saber mais sobre ela e, quem sabe, doá-la para a pesquisa.