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

Como sapos e rãs eram usados para detectar se mulheres estavam grávidas

Sapos eram usado para detectar gravidez - AndreasReh/Getty Images
Sapos eram usado para detectar gravidez Imagem: AndreasReh/Getty Images

Simone Machado

Colaboração para Tilt*, em São José do Rio Preto (SP)

08/04/2023 10h02Atualizada em 08/04/2023 20h59

Descobrir uma gravidez já foi um processo para lá de estranho. Há algumas décadas, envolvia a urina da mulher e sapos ou rãs. Parece estranho, mas era dessa maneira que mulheres que viveram nos Estados Unidos e na Europa entre os anos 1930 e 1960 confirmavam se estavam à espera de um bebê ou não.

O líquido era injetado com uma seringa no saco linfático dorsal do anfíbio. Por mais bizarro que possa parecer, o método, na verdade, é baseado na mesma ciência por trás dos testes de gravidez comprados nas farmácias e feitos em casa atualmente.

Funcionava assim:

  • Cerca de uma semana após a fertilização, o corpo da grávida começa a produzir o hormônio gonadotrofina coriônica humana, ou hCG -- ele vem da placenta recém-desenvolvida e está lá para desencadear a criação de outros hormônios importantes para a gravidez, como estrogênio e progesterona;
  • É após a produção desse hormônio que o corpo da mulher começa a apresentar as primeiras mudanças e normalmente surge a suspeita de uma gravidez;
  • Esse hormônio é facilmente encontrado na urina de mulheres grávidas;
  • No ado, as mulheres contavam com uma propriedade ligeiramente diferente do hCG: sua capacidade de forçar as rãs e sapos fêmeas a ovular muito rapidamente. Isso era feito injetando a urina a ser testada nas costas desses anfíbios;
  • Após um período de oito a 12 horas, tinha-se a resposta: se o anfíbio tivesse posto ovos, a gravidez estava confirmada; caso contrário, era descartada;
  • Nos testes rápidos de gravidez, aqueles de farmácia, um resultado positivo ocorre quando há hCG suficiente na amostra de urina para se ligar aos anticorpos incorporados na tira de teste. Enzimas especiais também se ligam ao hormônio e alteram a cor da linha indicadora, o que informa se a mulher está grávida ou não.

O uso de rãs para testes de gravidez era totalmente real, mas não era exclusivo: camundongos, coelhos e até mesmo ratos enfrentaram a injeção de xixi em algum momento da história para descobrir se uma mulher estava grávida ou não.

*Com informações Iflscience