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

Escolas no Rio ficarão fechadas por tempo indeterminado, diz secretário

Pedro Fernandes (direita) em ato de campanha com o governador Wilson Witzel - Reprodução
Pedro Fernandes (direita) em ato de campanha com o governador Wilson Witzel Imagem: Reprodução

Do UOL, em São Paulo

24/03/2020 21h49

Em transmissão ao vivo no Facebook, o secretário estadual da Educação do Rio de Janeiro, Pedro Fernandes, disse que não é possível afirmar quando as aulas presenciais serão retomadas nas escolas públicas e particulares do estado.

Na noite de ontem, Fernandes afirmou que a paralisação em função da pandemia da covid-19, doença causada pelo novo coronavírus, continuará por tempo indeterminado, podendo chegar a três a seis meses sem atividades.

"Em relação a prazo, nós não temos como estabelecer. Já foi anunciado inclusive pelo nosso governador e pelo secretário de saúde que, na melhor das hipóteses, isso dura cerca de três meses, podendo durar em torno de seis meses. É muito difícil a gente estabelecer prazo e acho que a gente não tem que se limitar a isso neste momento", afirmou o secretário.

O retorno das aulas na rede pública estadual de ensino estava previsto para o dia 30, mas foi adiado por determinação do Gabinete de Crise de prevenção ao novo coronavírus e pela Secretaria de Estado de Saúde.

As aulas serão feitas online com o auxílio de um convênio firmado com o Google, na plataforma Google Classrom. Ao falar sobre as avaliações, o secretário voltou a citar o prazo estendido:

"Queria pedir um pouco de paciência em relação a isso, porque o modelo de avaliação vai variar muito de acordo com o tempo que a escola fica paralisada. Se ficar dois, três meses sem aula, será um modelo. Se ar de seis meses, será outro completamente diferente, talvez no próprio EAD, ou, quando retornar, intensificar de forma presencial."

Errata: este conteúdo foi atualizado
Diferente do que foi informado no texto, o secretario estadual da Educação do Rio de Janeiro, Pedro Fernandes, disse que as escolas do Rio de Janeiro ficarão fechadas por tempo indeterminado, e não por mais de seis meses. A informação foi corrigida.