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

Esse conteúdo é antigo

Com sol, parque Ibirapuera reabre com movimentação intensa em São Paulo

Parque Ibirapuera teve movimentação intensa na reabertura - Anahi Martinho/UOL
Parque Ibirapuera teve movimentação intensa na reabertura Imagem: Anahi Martinho/UOL

Anahi Martinho

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

24/04/2021 11h22

Reaberto hoje após mais de um mês fechado, o parque Ibirapuera teve movimentação intensa ao longo da manhã ensolarada de hoje na cidade de São Paulo, com pessoas fazendo caminhada, corrida, esportes ao ar livre e até piquenique.

Neste sábado teve início a segunda etapa da chamada "fase de transição" do Plano São Paulo, de flexibilização econômica. Parques estaduais e municipais abrem das 6h às 18h.

A maioria dos frequentadores usava máscaras, mas algumas pessoas não estavam com a proteção ou não a usavam de forma correta. Em pelo menos três portões, a reportagem não viu ninguém medindo a temperatura dos frequentadores, apenas distribuição de álcool em gel.

Os vendedores ambulantes só podem trabalhar a partir das 11h. Por volta das 10h, alguns já eram abordados por clientes, mas não podiam vender.

Enquanto caminhava com a esposa e outros dois casais, Antônio Carlos Brasileiro, 66, disse que considera "ridículo" fechar o parque.

"A gente acha um absurdo ter fechado o parque. Não tem sentido, não tem contato com as pessoas, a gente está distanciado. É ridículo isso que o governador [João Doria (PSDB)] fez. Está tudo errado. E restringir o horário é pior. Causa mais aglomeração, porque todo mundo vai vir no mesmo horário. Ele fez tudo ao contrário", afirmou Brasileiro, que disse também já ter tomado a primeira dose da vacina ontem.

Parque Ibirapuera é reaberto - Anahi Martinho/UOL - Anahi Martinho/UOL
População aproveitou a reabertura do Ibirapuera
Imagem: Anahi Martinho/UOL

Célia, que também fazia parte do sexteto, afirmou que estava com saudades de caminhar com as amigas no parque.

"A gente está se encontrando só hoje, estávamos sentindo muita falta", afirmou a moradora de Moema, que não quis dizer o sobrenome.

"Se faço uma caminhada na rua de manhã, não fico mal de ar o resto do dia em casa. Mas preciso pelo menos ver a cara da rua", afirmou outra integrante do sexteto, que não quis se identificar e se mostrou incomodada com a presença da reportagem.

24.abr.2021 - As amigas Adriana Cavalheiro (à esq.) e Kátia Mola no parque Ibirapuera - Anahi Martinho/UOL - Anahi Martinho/UOL
As amigas Adriana Cavalheiro (à esq.) e Kátia Mola
Imagem: Anahi Martinho/UOL

As amigas Adriana Cavalheiro, 51, e Kátia Mola, 43, que trabalham com finanças e estão em home office, aproveitaram a reabertura do parque para se reencontrar ao ar livre.

Adriana, que mora em Ubatuba, afirma que a aglomeração em sua cidade foi "terrível" entre janeiro e fevereiro. "Todo mundo na praia e sem máscara", disse.

A amiga Kátia contou que começou a se exercitar em casa no início da pandemia, mas logo desistiu. "Estava sentindo muita falta de vir ao parque", afirmou.