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

Ricardo Feltrin

OPINIÃO

Veja 10 programas na TV aberta que (ainda) valem a pena ver

Bella Campos e Sheron Menezzes em "Vai na Fé" - Reprodução/Globo
Bella Campos e Sheron Menezzes em 'Vai na Fé' Imagem: Reprodução/Globo

Colunista do UOL

06/03/2023 04h05

Dados do novo sistema de medição do ibope, divulgados na semana ada por esta coluna, mostram que, dentro das residências, 73% do consumo de conteúdo em vídeo ainda é da soberana TV aberta.

Após sete décadas, esse veículo ainda é o mais importante na vida das pessoas e o mais valioso para os publicitários. Apesar da programação repetitiva.

Quem vê TV aberta?

"Ainnn mas quem vê TV aberta ainda?", perguntará o leitor dentro de sua bolha digital e do streaming.

A resposta é: quase 63 milhões de brasileiros que estão na linha de pobreza. Quase um quarto da população.

São 63 milhões que não têm banda larga e estão mais preocupados em ter o que comer do que em ficar nas redes sociais.

É para essas pessoas que a coluna elege hoje 10 programas que ainda valem a pena ser assistidos na TV aberta. A lista é em ordem alfabética.

A escolha, obviamente, foi feita pelo gosto pessoal do colunista. Caso queira, monte sua própria lista e poste no sistema de comentários abaixo.

Câmera Record

Apresentado por Roberto Cabrini, é um dos melhores programas jornalísticos e com um dos melhores jornalistas do país. Vai de temas policiais a cobertura de tragédias (como o terremoto na Turquia ou as chuvas no litoral norte de SP).

Domingo Espetacular

Começou quase 20 anos atrás como um arremedo do "Fantástico", mas foi ganhando personalidade ao longo do tempo, e variedade de pautas, das investigativas às inofensivas como vídeos de bichinhos. Boa diversão familiar.

Domingão com Huck

O apresentador teve a dura missão de substituir um dos maiores ícones da TV brasileira de todos os tempos. E conseguiu. Um programa despretensioso, que mistura diversão, quadros e temas e personagens que podem alegrar ou emocionar.

Fantástico

Foi o primeiro programa da TV brasileira a merecer o epíteto de "revista eletrônica", com seus inúmeros quadros e atrações que mudam ao longo dos anos. Também é e sempre foi um programa de jornalismo investigativo de respeito.

Jornal da Band

Apesar de não ter nem 10% da estrutura e equipe de um "Jornal Nacional", não faz feio. Aliás, como este colunista repete, o jornalismo da Band não deve nada ao da Globo ou de outros grandes veículos. Exceto porque falta investir mais.

Jornal da Globo

Jornalismo de excelência. Abrange e aprofunda todos os assuntos do dia. O único problema insolúvel é o horário absurdo em que é exibido, quase à 1h. Um ótimo trabalho, mas que é visto pelo menor número possível de telespectadores.

Jornal Nacional

Ainda é o programa ou veículo jornalístico mais importante e de maior alcance do Brasil. E isso há quase 54 anos. Teve vários tropeços em sua história, é verdade, mas os acertos são incrivelmente maiores. Tem de longe a melhor equipe de jornalismo do país.

Prelúdio

Infelizmente o programa/competição da TV Cultura, dedicado à música clássica e a encontrar novos intérpretes eruditos, é anual. Mas, graças à resiliência da emissora pública, chega aos 17 anos em 2023. Longa vida ao "Prelúdio".

The Noite

No conjunto da obra talvez o programa mais legal da TV aberta. Ótimos entrevistados, pautas, apresentador/entrevistador. Mas, infelizmente, também é exibido no horário em que nenhum trabalhador nacional pode estar acordado.

Vai na Fé

A mais recente novela das 19h30 da Globo encontrou o tom certo entre drama e humor. Personagens marcantes e núcleos interessantes. Com um pouco mais de investimento poderia ter dado certo também na faixa das 20h30.

Ricardo Feltrin no Twitter, Facebook, Instagram, site Ooops e YouTube