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

Russell Crowe Ator neozelandês

7 de Abril de 1964, Wellington (Nova Zelândia)

Da Página 3 Pedagogia & Comunicação

16/02/2009 23h53

Russell Ira Crowe nasceu em Wellington, Nova Zelândia, mas tem ascendência britânica, norueguesa e maori. Dois de seus tios, Martin e Jeff Crowe, são antigos capitães da seleção de críquete neozelandesa.

Crowe cresceu seguindo as orientações da Igreja Adventista do Sétimo Dia. Quando tinha 4 anos, seus pais se mudaram para a Austrália, onde frequentou a Sydney Boys High School. Aos 14, retornou à Nova Zelândia, onde não completou a educação secundária, abandonando os estudos para ajudar financeiramente sua família.

Crowe voltou à Austrália aos 21 anos, para ingressar no Instituto Nacional de Arte Dramática, plano do qual desistiu, ando a trabalhar como ator de teatro mambembe. Depois de aparecer nas séries de televisão "Neighbours" e "Living With the Law", Crowe obteve seu primeiro papel em um filme: "The Crossing", dirigido por George Ogilvie.

Em 1992, Crowe protagonizou o primeiro episódio da segunda temporada da série "Police Rescue". No mesmo ano, atuou em "Romper Stomper", um filme australiano dirigido por Geoffrey Wright.

Depois de seu êxito na Austrália, Crowe começou a aparecer em filmes norte-americanos. Primeiro, esteve ao lado de Denzel Washington em "Assassino Virtual", de 1995. Mas Crowe tornou-se uma estrela depois de trabalhar com Kevin Spacey, Guy Pearce e Kim Basinger no filme "Los Angeles - Cidade Proibida", em 1997.
 

Oscar de melhor ator

Nos anos seguintes, Crowe receberia três indicações ao Oscar de melhor ator: por "O Informante", "Gladiador" e "Uma Mente Brilhante". Ganhou o prêmio, em 2001, por sua atuação em "Gladiador". Seu trabalho em "Uma Mente Brilhante" lhe valeu um prêmio BAFTA.

Em 2005, voltou a filmar sob a direção de Ron Howard, em "A Luta pela Esperança". E foi dirigido por Ridley Scott em dois filmes: "Um Bom Ano" e "American Gangster".

Na maior parte do ano, Crowe mora na Austrália. Ele também é cantor e compositor. Foi vocalista e guitarrista da banda de rock "30 Odd Foot Of Grunts" e hoje colabora na banda canadense "Great Big Sea". Publicou um álbum no iTunes, intitulado "My Hand, My Heart".

Russell Crowe também é co-proprietário da South Sydney Rabbitohs, uma equipe da Liga Nacional de Rugby da Austrália.
 

Folha de S. Paulo; El País