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

Colunistas especulam os "melhores substitutos" para vaga de Datena na Band

Datena se afastará da televisão na próxima semana. Quem poderá substituí-lo?  - Reprodução
Datena se afastará da televisão na próxima semana. Quem poderá substituí-lo? Imagem: Reprodução

Luiza Stevanatto

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

25/06/2022 04h00

Após José Luiz Datena confirmar que se afastará da televisão na próxima quinta-feira, logo surgiu a questão: "Quem poderia substituir o jornalista veterano nas tardes da Band? Quem está à altura?".

Os colunistas de Splash têm a resposta na ponta da língua e ousam em suas apostas para o novo apresentador do "Brasil Urgente":

Aline Ramos vê Zeca Camargo como uma "ótima opção" para assumir a bancada de Datena:

Ele já apresentou todo tipo de programa na vida, incluindo o "Fantástico", e pode lidar bem com as aventuras de uma atração como essa. Como uma figura carismática e inovadora, Zeca pode transformar o "Brasil Urgente" em uma espécie de "Vídeo Show Urgente", mesclando bastidores do crime com game show da vida real pelas ruas do país. Aline Ramos

Chico Barney acredita na nova geração e indica uma ex-estrela mirim para a difícil tarefa:

"Datena é um incomparável narrador das tragédias cotidianas. Está para o noticiário policial assim como Galvão Bueno está para as partidas de futebol e Casimiro Miguel para os vídeos de culinária indiana", afirma o colunista.

Mas se realmente se afastar da televisão, o ideal seria substituí-lo por alguém com uma visão mais jovem e progressista, propondo caminhos no intuito de pavimentar um novo futuro para o Brasil —inclusive o Urgente. Nesse sentido, acredito que Maisa Silva é o nome para tal missão. Traria um olhar diferenciado para as mazelas da sociedade, com a energia de quem sabe que um mundo melhor é possível. Chico Barney

Lucas Pasin, por sua vez, é conservador ao escolher uma ex-âncora do jornalismo da Globo, mas inova ao sugerir uma mulher para o cargo. Vale lembrar que a função geralmente é desempenhada por Datena, seus filhos Joel e Vicente ou uma variedade de outros homens igualmente fascinados por violência urbana, enchentes, engarrafamentos e outras questões de cunho urgente, como sugere o nome do programa.

Michelle Barros seria a melhor opção da Band para substituir Datena. Inclusive, a melhor contratação possível da Band para o jornalismo. Michelle não teve a oportunidade que merecia na TV Globo e já provou inúmeras vezes o brilhantismo ao conduzir o jornalismo ao vivo. Além disso, seria muito interessante ver uma mulher no comando do "Brasil Urgente". Lucas Pasin