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

Michel de Montaigne Filósofo francês

28/02/1533, Castelo de Montaigne, Dordonha, França

23/9/1592, Bordeaux, França

Da Página 3 Pedagogia & Comunicação

08/12/2005 17h43

Michel Eyquem nasceu em dia não sabido no Castelo de Montaigne, de propriedade de seu pai, na Dordonha (França). Adotou o nome da propriedade ao herdá-la em 1568. Sua mãe descendia de judeus portugueses. Michel de Montaigne foi educado em latim e sempre dedicou interesse às letras, ando, porém, progressivamente, da poesia à história. Também se interessava pelos relatos de viagem e teve oportunidade de encontrar um índio sul-americano conduzido à Europa, que lhe inspiraria o magnífico capítulo 31 do Livro 1 dos seus "Ensaios": "Dos Canibais", onde demonstra com grande eficácia sua crítica dos preconceitos e do etnocentrismo (em plena época da guerra das religiões).

Conselheiro do Parlamento de Bordeaux de 1557 a 1570, Montaigne aí conheceu o poeta e pensador Étienne de La Boétie. Tornou-se seu amigo até a morte precoce de La Boétie, em 1563, aos 33 anos.

Em 1574, após a Noite de São Bartolomeu - massacre de protestantes por católicos em Paris - Montaigne fez no Parlamento de Bordeaux um discurso notável em prol da tolerância religiosa, e conclamando todos a evitar a violência e estabelecer a ordem pela força da palavra e das ideias.

Aos 32 anos, em 1565, ele havia se casado com Françoise de la Chassaigne, onze anos mais jovem que ele. Teve com ela seis filhos, dos quais apenas uma menina, Leonor sobreviveu.

Condecorado em 1571 pelo rei Henrique 3o com a ordem de Saint-Michel e nomeado Cavalheiro ordinário da Câmara do rei, também foi honrado por Henrique 4o em 1577 com o título de Cavaleiro de sua Câmara. Elegeu-se prefeito de Bordeaux e exerceu o cargo entre 1580 e 1581.

Ao fim de sua vida, preferiu tornar-se um simples observador da vida pública. Tendo começado a escrever em 1572, publicou os dois primeiros volumes de "Ensaios" em 1580, mas a eles acrescentou um terceiro volume e diversas modificações em 1588 e neles trabalhando ainda em 1592, seu último ano de vida.

Montaigne fez de si mesmo seu grande objeto de estudo, mas, estudando a si mesmo, estudava na verdade o ser humano. Segundo um estudioso, "Montaigne se descobriu escrevendo os 'Ensaios' e seu livro o fez ao mesmo tempo em que ele fazia seu livro".