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

Dr. Kalil

OPINIÃO

Texto em que o autor apresenta e defende suas ideias e opiniões, a partir da interpretação de fatos e dados.

Os malefícios do cigarro eletrônico: não podemos retroceder

Colunista do UOL

09/05/2022 04h00

Um a cada cinco jovens entre 18 a 24 anos usa cigarro eletrônico no Brasil, de acordo com o relatório Covitel (Inquérito Telefônico de Fatores de Risco para Doenças Crônicas não Transmissíveis em tempos de pandemia), divulgado recentemente.

O dado é alarmante, já que o dispositivo é bastante prejudicial à saúde, como sempre falo. O que se sabe hoje é que, além da dependência, o cigarro eletrônico pode causar complicações no pulmão e no sistema cardiovascular bastante sérias —fora os demais riscos que ainda mal conhecemos.

Um estudo recente conduzido por pesquisadores da Johns Hopkins University encontrou milhares de produtos químicos desconhecidos em cigarros eletrônicos. A pesquisa, que avaliou líquidos (na avaliação, apenas no sabor tabaco) e aerossóis, também encontrou seis aditivos e contaminantes potencialmente perigosos nas amostras.

Atualmente, o cigarro eletrônico é proibido no país. Liberá-lo poderia significar um grande retrocesso na luta contra o tabagismo, que avançou nas últimas décadas e resultou na redução do número de fumantes do cigarro tradicional.

Desde abril, a Anvisa (Agência Nacional de Vigilância Sanitária) ou a receber evidências técnicas e científicas sobre os DEF (Dispositivos Eletrônicos para Fumar) —como são chamados os cigarros eletrônicos. A agência apresentou um documento sobre os dispositivos e disponibilizou um formulário para envio de contribuições.

Na última semana, o CFM (Conselho Federal de Medicina) se posicionou sobre o produto, reforçando que sua proibição se mantenha no Brasil.

A liberação do cigarro eletrônico poderia trazer diversos riscos. Fumantes do cigarro tradicional, por exemplo, poderiam optar por migrar para o novo produto, em vez de buscar o tratamento e parar de fumar —atitude que, de fato, terá impacto positivo para a saúde. Além disso, poderia gerar aumento do consumo entre jovens, público entre o qual o dispositivo tem muito apelo.

Por isso, enfatizo: o cigarro eletrônico não representa alternativa segura, como alguns podem pensar. Esteja atento. Cuide da sua saúde.