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

Anvisa volta a obrigar uso de máscara em aeroportos e aviões

Mulher com máscara de proteção a por painéis com lista de voos no aeroporto de Viracopos, em Campinas (SP) - Rahel Patrasso
Mulher com máscara de proteção a por painéis com lista de voos no aeroporto de Viracopos, em Campinas (SP) Imagem: Rahel Patrasso

Do UOL, em São Paulo

23/11/2022 06h29Atualizada em 23/11/2022 07h00

A Anvisa (Agência Nacional de Vigilância Sanitária) aprovou uma resolução que obriga o uso de máscaras em aviões e aeroportos de todo o Brasil após aumento no número de casos de covid-19. A medida começa a valer a partir de sexta-feira (25).

A proteção deixou de ser exigida em aeroportos em agosto deste ano. Na época, o diretor-presidente Antônio Barra Torres considerou haver um considerável "grau de conscientização vacinal" e boa aderência ao uso de máscara no Brasil, mesmo quando seu uso não é obrigatório.

Na resolução aprovada ontem (22), a diretoria da Anvisa afirma que a volta do uso de máscara é necessária para "conter a disseminação da doença na população que utiliza esses ambientes seja para trabalho ou para locomoção".

A agência diz que o esperado aumento do fluxo de viajantes que se deslocam pelos aeroportos nas férias escolares e festas de fim de ano pode agravar o cenário epidemiológico.

O Brasil atingiu ontem (22) uma média móvel de 65 mortes por covid, a maior em 21 dias, segundo dados do consórcio de veículos de imprensa, do qual o UOL faz parte (veja abaixo).

O indicador da média móvel é considerado por especialistas como a forma mais eficaz de medir a evolução da doença.

Segundo o diretor Alex Campos, que propôs a medida, "o uso de máscaras em ambientes de maior risco, pelas suas características de confinamento, circulação e aglomeração de pessoas, representa um ato de cidadania e de proteção à coletividade e objetiva mitigar o risco de transmissão e de contágio da doença".

A Anvisa não permite o uso de qualquer máscara. Estão proibidas:

  • Máscaras de acrílico ou de plástico;
  • Máscaras com válvulas de expiração, incluindo as N95 e PFF2;
  • Lenços, bandanas de pano ou qualquer outro material que não seja caracterizado como máscara de proteção de uso profissional ou de uso não profissional;
  • Protetor facial (face shield) isoladamente;
  • Máscaras de proteção de uso não profissional confeccionadas com apenas uma camada ou que não observem os requisitos mínimos previstos na ABNT PR 1002.

Média móvel de mortes por covid chega a 65, maior marca em 21 dias

Com 159 vidas perdidas para a covid-19 nas últimas 24 horas, o Brasil atingiu hoje uma média móvel de 65 mortes, a maior em 21 dias. Os dados são do consórcio de veículos de imprensa, do qual o UOL faz parte.

A média móvel é calculada a partir da quantidade de ocorrências dos últimos sete dias. A taxa registrada hoje foi a mais alta desde 1º de novembro, quando ficou em 68.

Desde o início da pandemia, foram 689.223 mortes causadas pela doença. O país também registrou, nas últimas 24 horas, 27.931 novos casos da doença.

Com isso, a média móvel de testes positivos ficou em 18.592, uma alta de 261% em relação a 14 dias atrás.