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

Antes de deixar Globo, André Marques foi criticado por modos no 'É de Casa'

De Splash, em São Paulo

30/05/2022 13h30

Apenas dois dias antes de anunciar sua saída da TV Globo, André Marques foi criticado por sua postura na apresentação do "É de Casa".

Na última edição do programa matinal que vai ao ar todo sábado, ele fez alguns comentários ásperos com as parceiras de apresentação Ana Furtado, Talitha Morete e Tati Machado.

Ana e Talitha recebiam a campeã Silvia Taioli e a jovem Thayná Tarcilla para falar sobre sinuca quando foram interrompidas pelo apresentador, que brincou:

"Na verdade eu vim aqui muito preocupado, porque vocês jogando com elas, podem desaprender tudo já aprendido nesse tempo. Eu não quero participar dessa vergonha."

Depois, preparando a receita do dia, ele contou com a ajuda de Tati, mas outros comentários também chamaram a atenção dos telespectadores. Ele cortou batatas e a jornalista foi secá-las para a receita, mas recebeu a ponderação — em tom ácido:

"Vai secar assim, uma por uma? Ah, legal, aí a gente entra no 'Jornal Nacional', fritando as batatas", disse André.

A postura de André rendeu reações no Twitter:

Saída de André Marques da Globo

Ele estreou como apresentador em 2002, no "Vídeo Show". Apresentou "Superstar" (2014 e 2015), substituiu Ana Maria Braga no "Mais Você", e depois comandou "The Voice Kids", "The Voice Brasil", "No Limite" e "The Voice +".

Em outubro de 2021, a Globo anunciou que André Marques não seria mais o apresentador do "No Limite" em 2022, agora comandado por Fernando Fernandes.

Vale destacar que André Marques parece não ter agradado os fãs do reality show na edição 2021, que marcou o retorno do programa e reuniu ex-BBBs competindo. As críticas foram tantas que o nome do apresentador da atração acabou indo parar nos Trending Topics do Twitter.

André Marques também precisou substituir Tiago Leifert na edição do "The Voice Brasil", no fim de 2021. Tiago gravou a primeira fase da competição, mas deixou o programa por "motivos pessoais".