;(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();
})();
BBB 23: Fred elogia Larissa em Jogo da Discórdia: 'Jantou ao vivo'
BBB 23: Fred analisa Larissa em Jogo da Discórdia: 'Jantou ao vivo' Imagem: Reprodução/Globoplay
Colaboração para Splash, em São Paulo
07/02/2023 21h17Atualizada em 07/02/2023 21h17
O Jogo da Discórdia de ontem ainda está rendendo e os brothers relembraram a dinâmica no BBB 23 (Globo).
Em conversa na área externa, eles comentaram o momento que Larissa chamou Cristian de falso e pontuou atitudes do brother na casa que vão contra seus aliados.
Fred: "Acho que ela arregaçou. Eu falei para o Cristian, ele falou que usa o Queridômetro como recurso a meu favor... Eu disse: 'Então, você jogou a isca e a Lari mordeu'. Mas o problema é que ela te jantou ao vivo".
Fred continua: "Eu ia usar um argumento para falar com ele, só que a cartinha que eu ia usar, tenho uma fraqueza nela, se eu der, ele poderia ir nessa fraqueza minha, então não vou. Aí troquei de carta. Quando usa carta para atacar, tem que saber qual será o seu contra-ataque, senão você se ferra. E foi o que aconteceu com ele".
Jogo da Discórdia
Larissa colocou a placa de "venenoso" em Cristian durante o Jogo da Discórdia no BBB 23. Em sua justificativa, a sister disse que o modelo "fala mal do próprio grupo" e voltou a falar do emoji de cobra que recebeu no Queridômetro.
ENQUETE UOL BBB 23: Quem você quer eliminar no Paredão? Vote
Enquete encerrada
Total de 121815 votos
63,07%
22,71%
14,22%
Total de 121815 votos
A votação do UOL não possui caráter cientifico ou influência sobre o resultado do programa da TV Globo
BBB 23: Confira o pódio dos participantes do reality no Jogo da Discórdia
1 / 22
BBB 23: Key Alves escolhe Gustavo para o seu pódio e Guimê e Gabriel para as bombas
Reprodução/Globoplay
2 / 22
BBB 23: Marília escolhe Nicácio para o seu pódio e Paula e Gabriel para as bombas
Reprodução/Globoplay
3 / 22
BBB 23: Bruna Griphao escolhe Larissa para o seu pódio e Gustavo e Key Alves para as bombas
Reprodução/Globoplay
4 / 22
BBB 23: Ricardo escolhe Fred para o seu pódio e Nicácio e Marília para as bombas
Reprodução/Globoplay
5 / 22
BBB 23: Fred escolhe Ricardo para o seu pódio e Domitila e Cristian para as bombas
Reprodução/Globoplay
6 / 22
BBB 23: Marvvila escolhe Sarah Aline para o seu pódio e Gabriel e Guimê para as bombas
Reprodução/Globoplay
7 / 22
BBB 23: Gabriel escolhe Sarah Aline para o seu pódio e Gabriel e Guimê para as bombas
Reprodução/Globoplay
8 / 22
BBB 23: Sarah Aline escolhe Marvvila para o seu pódio e Gabriel e Guimê para as bombas
Reprodução/Globoplay
9 / 22
BBB 23: Gabriel escolhe Paula para o seu pódio e Nicácio e Marília para as bombas
Reprodução/Globoplay
10 / 22
BBB 23: Larissa escolhe Bruna para o seu pódio e Key Alves e Gustavo para as bombas
Reprodução/Globoplay
11 / 22
BBB 23: Gustavo escolhe Key Alves para o seu pódio e Guimê e Gabriel para as bombas
Reprodução/Globoplay
12 / 22
BBB 23: MC Guimê escolhe Tina para o seu pódio e Key Alves e Nicácio para as bombas
Reprodução/Globoplay
13 / 22
BBB 23: Tina escolhe Guimê para o seu pódio e Marília e Domitila para as bombas
Reprodução/Globoplay
14 / 22
BBB 23: Aline escolhe Bruno para o seu pódio e Marília e Domitila para as bombas
Reprodução/Globoplay
15 / 22
BBB 23: Bruno escolhe Aline para o seu pódio e Marília e Nicácio para as bombas
Reprodução/Globoplay
16 / 22
BBB 23: Paula escolhe Gabriel para o seu pódio e Marília e Nicácio para as bombas
Reprodução/Globoplay
17 / 22
BBB 23: Cezar escolhe Cristian para o seu pódio e Gabriel e Tina para as bombas
Reprodução/Globoplay
18 / 22
BBB 23: Cristian escolhe Cezar para o seu pódio e Gabriel e Fred para as bombas
Reprodução/Globoplay
19 / 22
BBB 23: Domitila escolhe Key Alves para o seu pódio e Gabriel e MC Guimê para as bombas
Reprodução/Globoplay
20 / 22
BBB 23: Amanda escolhe Cara de Sapato para o seu pódio e Fred Nicácio e Marília para as bombas
Reprodução/Globoplay
21 / 22
BBB 23: Cara de Sapato escolhe Amanda para o seu pódio e Fred Nicácio e Marília para as bombas
Reprodução/Globoplay
22 / 22
BBB 23: Fred Nicácio escolhe Domitila para o seu pódio e Gabriel e Ricardo para as bombas
O autor da mensagem, e não o UOL, é o responsável pelo comentário. Reserve um tempo para ler as Regras de Uso para comentários.
Escolha do editor
Escolha do editor
PUBLICIDADE
Veja aqui as principais novidades do Big Brother Brasil. Acompanhe as principais notícias e análises sobre as provas, formação de paredão, discussões, casais, enquetes e muito mais. O reality, produzido pela Globo e apresentado por Tadeu Schmidt, chega a sua 25ª edição com uma inovação: pela primeira vez, os participantes entraram na casa em duplas.
ID: {{comments.info.id}}
URL: {{comments.info.url}}
Ocorreu um erro ao carregar os comentários.
Por favor, tente novamente mais tarde.
{{comments.total}} Comentário
{{comments.total}} Comentários
Seja o primeiro a comentar
Essa discussão está encerrada
Não é possivel enviar novos comentários.
Essa área é exclusiva para você, , ler e comentar.
Só s do UOL podem comentar
Ainda não é ? Assine já.
Se você já é do UOL, faça seu .
O autor da mensagem, e não o UOL, é o responsável pelo comentário. Reserve um tempo para ler as Regras de Uso para comentários.