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

Namorando, Iza diz viver fase dona de si: 'Não preciso mudar por ninguém'

Namorando, Iza diz viver fase dona de si: "Não preciso mudar por ninguém" - Reprodução/Instagram
Namorando, Iza diz viver fase dona de si: 'Não preciso mudar por ninguém' Imagem: Reprodução/Instagram

De Splash, no Rio

21/03/2023 18h18Atualizada em 21/03/2023 19h24

Iza, 32, abriu o coração pela primeira vez sobre o relacionamento com o jogador de futebol Yuri Lima. Eles assumiram relacionamento em fevereiro deste ano, mas já eram apontados como affair desde janeiro

"O Yuri é uma pessoa incrível, o homem mais incrível que conheci até agora", comentou durante entrevista coletiva sobre o "The Voice Kids", na qual Splash esteve presente hoje.

Durante a conversa, Iza revelou estar vivendo uma fase "dona de si". "Estou em um momento muito feliz da minha vida, muito leve, tranquila, tenho feito escolhas que têm contribuído muito mais para minha criatividade e bem-estar. Estou em um momento dona de mim."

A cantora ainda falou sobre amor-próprio e o fato de poder ser ela mesma ao lado do namorado. "Amor-próprio é saber que tenho meu valor, é saber que não preciso mudar por ninguém. Estar com o Yuri me deixa feliz, óbvio, mas vai além disso", completou.

Mumuzinho, Iza, Carlinhos Brown e Fátima Bernardes nas gravações do The Voice Kids 2023 - Globo/Manoella Mello - Globo/Manoella Mello
Mumuzinho, Iza, Carlinhos Brown e Fátima Bernardes nas gravações do The Voice Kids 2023
Imagem: Globo/Manoella Mello

The Voice Kids

A versão infantil do reality musical retorna às telinhas no dia 9 de abril. A temporada 2023 será exibida nos domingos à tarde e conta com um trio negro de técnicos — Iza, Carlinhos Brown e Mumuzinho. A apresentação é de Fátima Bernardes.

"É a primeira que estou trabalhando tão perto do Mumuzinho. Com o Brown, já tive chances de trabalhar. Toda vez que a gente começa um projeto assim, rola uma insegurança, não sabe como vai ser. Peguei uma coisa muito especial que é sobre 'tempo de fala', uma coisa que não está escrito em lugar nenhum, tem que saber quando começar e quando terminar. Está sendo tão maneiro. Queria muito agradecer a oportunidade de estar aqui, porque é um presente estar ao lado de Mumuzinho, Brown, Fátima e essa equipe maravilhosa", disse Iza.

O reality começa com as Audições às Cegas, onde cada técnico monta equipes com 18 vozes, e a disputa vai se afunilando, fase a fase. Durante as Batalhas, trios disputam a permanência no programa, cantando a mesma música, mas apenas uma voz de cada trio é selecionada; na fase dos Shows, as apresentações são individuais, e somente quatro talentos seguem adiante na competição; a fase inédita das Super Batalhas qualifica três candidatos de cada grupo para a semifinal, quando é decidido quem são as duas vozes de cada time a avançar para a final.

No último programa, ao vivo, o voto popular é quem decide quem será a voz escolhida para receber o prêmio de R$ 250 mil e um contrato com a Universal Music.