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

Ela resolveu tatuar a cabeça após esconder alopecia por mais de 20 anos

Mulher tatua cabeça - Rebeccca Dawe/Reprodução Instagram
Mulher tatua cabeça Imagem: Rebeccca Dawe/Reprodução Instagram

Da Universa

27/03/2019 14h52

A britânica Rebecca Dawe decidiu tatuar a cabeça depois de esconder a alopecia por mais de 20 anos. Diagnosticada com a doença aos 16, ela ou as últimas duas décadas usando perucas e negando a falta de cabelo. "O dano psicológico é indescritível. Eu não me sentia mais bem comigo mesma, não queria sair e diminuí meu círculo de amigos. Eu usava peruca para ir ao trabalho e me sentia humilhada e derrotada", contou ela, em entrevista ao jornal "Metro".

Em janeiro, depois de três sessões, ela concluiu o desenho que fez na cabeça e, não apenas deu início a uma nova fase, como ou a encorajar outras mulheres que enfrentam o mesmo problema.

$escape.getH()uolbr_geraModulos('embed-foto','/2019/rebecca-dawe-1553709058297.vm')

"Eu estava conversando com essas pessoas sobre como lidar com a falta de cabelo, mas eu sentia que não sabia lidar com a minha própria doença. Eu ainda odiava a ideia das pessoas me verem sem peruca. Então decidi tatuar. Imaginei que se fosse mostrar para todo mundo meu problema, teria que ser pela razão certa", disse Rebecca, que desenhou pássaros e flores coloridos. "Queria um tema natural e muito feminino. Não queria uma tattoo que fosse intimidante. Queria que as pessoas sentissem que podiam se aproximar e conversar comigo sobre isso".

A primeira aparição sem as já conhecidas perucas, aconteceu no Facebook. "Eu estava absolutamente apavorada. A resposta foi imediata e chocante e as pessoas começaram a me dizer que estavam chorando. Isso me encorajou a me aceitar como eu sou. Todo mundo tem inseguranças com o seu corpo".

Depois de receber todo o e, Rebecca decidiu ajudar outras mulheres e criou a empresa Hair Necessity, que se identifica como "expert em perda de cabelo" e vende, além de órios, perucas feitas sob medida. O site também funciona como um canal aberto para quem quer tirar dúvidas ou simplesmente desabafar sobre o problema.