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

Sistema nervoso e encéfalo (1) - Cérebro, cerebelo e bulbo

Maria Sílvia Abrão, Especial para a Página 3 Pedagogia & Comunicação

Para nos manter vivos, todas as partes do nosso corpo trabalham juntas. Nosso coração precisa estar pulsando e impulsionando o sangue pelo nosso organismo; o diafragma precisa estar se contraindo e relaxando, para aumentar e diminuir o volume dos pulmões possibilitando a entrada do ar atmosférico para a realização das trocas gasosas; nossos rins precisam estar filtrando o sangue que chega até eles; o fígado, o pâncreas, o estômago e os intestinos precisam realizar suas funções para digerir o alimento e disponibilizar os nutrientes para nossas células.

Se uma dessas funções cessar, todas as outras partes do nosso corpo param de funcionar e não poderemos mais viver. Mas de que modo se organizam todas essas funções? O que as coordena? Todo o organismo é coordenado pelo nosso encéfalo (que é formado pelo cérebro, o cerebelo e o bulbo raquidiano, como veremos adiante). O encéfalo se localiza no interior de nosso crânio, uma caixa óssea que o abriga e protege.

 

Sistema nervoso é como uma empresa

Para deixar as coisas mais claras, podemos comparar nosso corpo a uma empresa. Em relação aos seus clientes, as empresas precisam fazer contatos, receber informações sobre suas necessidades, elaborar propostas, atender sua solicitações, não é?

Veja, os clientes estão fora da empresa. No caso do nosso corpo, quem faz o contato com "os clientes" - ou seja o meio ambiente - são os órgãos do sentido. Eles recebem informações sobre o mundo exterior, que serão encaminhadas ao chefe (o encéfalo) de quem virá uma ordem para execução: o tipo de interação que tivermos de realizar com o meio ambiente.

A secretária da empresa faz um contato com o cliente e precisa se comunicar com o chefe. Se a empresa é pequena, ela vai até a mesa dele e explica o caso. Porém, numa empresa grande, ela utilizará interfones para essa comunicação.

Podemos comparar nossos nervos aos fios dos interfones que colocam a secretária em contato com o chefe. São os nervos que transportam as mensagens recebidas pelos receptores sensoriais ao encéfalo. As mensagens, como você já sabe, chegam até nós pelos cinco sentidos.

 

Ação e reação

Se ouvirmos o latido de um cachorro, essa mensagem chega ao nosso encéfalo através do nervo acústico. Ao mesmo tempo, seus olhos podem estar vendo a cara do animal: além de rosnar, ele está com os dentes à mostra. Essa mensagem é encaminhada ao cérebro pelo nervo óptico. O que vemos e escutamos nos faz fugir do animal.

Nosso encéfalo manda uma mensagem para as nossas pernas e outra para nosso coração. amos a correr no sentido contrário do animal e, no momento da corrida, nosso coração dispara, para que mais sangue e mais oxigênio cheguem aos nossos músculos, liberando maior quantidade de energia.

Se você pensar bem, verá que são muitas as mensagens que vão para o cérebro e voltam dele ao mesmo tempo. Por isso, pode estar se perguntando: como é que esse monte de mensagens não fica todo misturado e confuso? Isso ocorre porque existem alguns nervos que levam as mensagens dos órgãos receptores ao encéfalo e outros que levam as mensagens do encéfalo para as partes do corpo.