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

Luana Piovani comenta posts sobre Arthur Aguiar: 'Saia da caixinha'

Luana Piovani - Reprodução/Instagram
Luana Piovani Imagem: Reprodução/Instagram

Colaboração para Splash, em São Paulo

11/03/2022 07h11

Luana Piovani segue criticando Arthur Aguiar, participante do "BBB 22" (TV Globo) mesmo depois da réplica de Maíra Cardi. Em seu Instagram, a ex-esposa de Pedro Scooby aproveitou uma publicação de uma conta para explicar o que ela chamou de 'tendência do homem de achar que mulher é centro de reabilitação'.

Na publicação em questão compartilhada pela própria Luana, a dona da conta, a escritora Iara Dupont, fez três publicações relacionadas ao último paredão entre Jade e Arthur: no primeiro, ela comenta que 'Jade saiu porque o Brasil é um país machista'; no segundo, ela explica a briga entre Luana e Maíra e pergunta se 'existe feminismo certo ou errado?'; no terceiro, ela pontua que 'a presença de Arthur no "Big Brother Brasil" incomoda muitas mulheres', inclusive ela.

Luana aproveitou que foi citada pela autora dos posts para compartilhar sua visão sobre eles. Em seus stories, a atriz pontuou: 'Por que será que homem tem a tendência de achar que mulher é centro de reabilitação? Vai ver que é porque assim permitimos! Que tal sair da caixinha e pensar sem ser rebanho um pouco?" Em seguida, ela postou os prints com as publicações em questão e fez questão de legendar cada um deles com: 'Está aqui a dica', 'Leiam, por favor', 'Reflitam' e 'Saia da caixinha! Larga o rebanho'.

Para finalizar, ela deu uma dica para seus seguidores: "Não adianta nada dizer que me ira, que me acha uma mulher fod*, se na hora da lição, na hora de subir um degrau, vocês se apegam ao antigo, ao, obviamente, socado na nossa cabeça. Patriarcado sujo! Eu confio em vocês, meus seguidores pensantes e sensatos. Esse milhão de seguidor que ganhei a mais não me interessa se for para ser tapado. Prefiro meus três milhões pensantes", finalizou.

Veja agora: 'Realities - O Brasil na TV'

A gente já conversou com os ex-BBBs arrependidos, com os que causaram polêmica e agora, em "Realities - O Brasil na TV", documentário em três episódios produzido por Splash e MOV.doc, contamos os primórdios e os bastidores dos reality shows no Brasil.

Quem vai vencer a prova individual de resistência?

Enquete encerrada

Total de 4090 votos
46,97%
Reprodução/Instagram @bbb